ncols 7209 nrows 3337 xllcorner -124.000000 yllcorner 25.000000 cellsize 0.007492 nodata_value -1 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 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 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 5 5 4 4 4 5 5 5 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 4 4 5 5 4 5 5 4 4 4 5 4 4 5 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 4 5 5 4 5 5 5 4 4 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 6 6 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 4 4 3 4 4 4 3 4 3 4 4 4 4 4 4 4 5 5 4 4 5 5 5 6 5 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 5 4 4 5 5 4 5 4 4 4 5 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 5 4 4 5 4 4 5 4 5 5 4 5 4 5 6 4 5 5 4 4 5 4 5 4 4 4 4 4 5 4 4 5 4 5 5 4 5 4 5 5 4 4 5 4 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 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 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 4 4 3 4 4 4 4 3 4 4 4 3 4 4 4 4 4 5 5 4 5 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 5 5 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 5 4 4 5 5 4 5 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 5 5 4 5 5 4 4 4 5 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 5 5 4 5 4 4 5 4 4 5 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 4 4 3 3 3 3 3 4 3 4 3 3 3 4 3 4 3 4 4 3 4 4 3 4 4 4 4 5 4 5 4 5 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 4 4 4 4 5 5 4 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 5 5 4 4 5 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 5 4 4 4 4 4 4 4 4 4 4 4 5 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 4 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 4 3 3 4 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 5 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 5 4 5 4 4 4 4 5 5 4 4 4 4 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 4 4 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 4 3 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 3 5 4 4 4 4 4 4 5 5 4 4 4 4 4 4 5 5 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 5 5 4 5 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 5 5 4 5 5 5 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 5 4 5 4 4 4 4 5 5 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 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 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 4 3 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 3 4 3 4 4 4 4 3 3 4 3 4 5 5 6 6 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 5 4 4 5 4 4 4 4 4 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 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 4 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 4 4 3 4 4 4 5 7 7 6 6 5 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 5 4 4 5 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 5 5 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 4 4 4 4 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 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 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 4 4 4 3 4 3 3 3 4 4 4 4 4 4 4 4 4 4 5 6 6 8 6 6 5 5 4 6 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 5 4 4 4 4 4 4 4 4 4 3 5 5 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 5 4 4 5 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 5 4 4 5 5 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 4 3 3 3 3 4 3 4 4 3 4 4 3 4 3 4 4 3 3 4 4 4 4 4 4 4 5 8 8 6 4 4 4 4 5 6 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 5 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 5 4 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 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 4 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 4 4 3 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 6 6 6 5 4 4 4 4 5 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 5 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 3 4 3 4 4 3 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 5 5 5 5 4 4 5 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 4 4 4 4 4 4 4 3 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 3 3 4 3 3 3 3 3 3 4 4 3 3 3 4 4 3 4 3 3 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 5 5 5 5 4 4 5 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 4 4 4 4 4 4 4 3 4 4 4 5 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 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 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 4 3 3 4 3 3 4 3 3 3 3 4 4 3 4 3 3 3 4 4 4 3 4 4 3 4 4 3 4 4 3 4 4 4 5 3 5 4 4 4 5 6 5 5 5 4 4 4 4 4 4 4 4 5 4 5 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 4 3 4 3 3 4 4 3 4 4 4 4 4 4 5 4 4 5 4 4 4 5 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 5 4 5 4 4 5 5 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 4 3 3 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 5 4 5 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 5 5 4 4 4 4 4 3 4 4 4 4 4 3 4 4 5 4 3 4 4 4 4 4 4 5 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 4 3 3 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 4 3 4 4 3 3 3 4 4 3 4 4 4 3 3 3 4 3 4 4 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 5 4 4 4 4 5 5 4 4 4 4 4 4 5 4 4 5 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 5 4 4 5 4 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 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 3 3 3 3 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 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 4 3 4 4 3 3 3 4 4 3 4 4 4 3 3 3 4 3 4 4 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 5 5 4 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 5 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 3 4 3 3 4 3 4 3 4 3 4 4 4 3 4 4 4 4 3 4 4 4 3 4 4 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 4 4 4 3 3 4 4 4 4 4 4 4 4 3 3 3 4 3 4 4 4 3 3 3 4 3 4 4 3 4 3 3 3 4 3 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 5 5 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 4 3 3 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 3 4 3 3 3 4 3 3 4 4 3 3 3 3 4 3 3 4 4 4 3 4 4 4 3 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 5 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 5 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 5 5 3 4 4 4 4 4 5 4 4 5 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 3 4 4 4 3 3 4 4 3 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 3 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 4 4 4 4 4 5 4 4 4 4 4 4 3 4 3 4 4 3 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 4 4 5 5 4 4 5 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 3 3 4 4 3 4 4 4 4 3 4 3 4 4 4 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 4 4 4 5 4 5 4 4 4 4 4 5 4 4 4 4 5 5 4 5 4 4 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 3 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 5 5 5 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 3 4 3 4 3 3 4 4 3 4 4 4 4 3 4 3 4 4 4 3 4 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 4 4 4 4 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 4 3 4 3 3 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 3 4 4 3 4 3 4 4 4 4 4 3 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 5 4 4 5 4 4 5 5 5 4 4 4 4 4 4 3 4 4 3 4 3 3 4 3 4 3 3 3 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 5 4 4 4 4 4 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 4 3 4 3 3 4 4 3 4 4 4 4 4 3 4 4 3 4 4 3 4 3 3 4 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 5 4 4 5 4 4 4 4 5 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 4 3 3 3 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 3 4 4 5 5 4 4 4 4 4 4 4 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 4 4 4 4 3 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 4 4 4 4 5 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 4 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 4 3 4 3 3 4 4 3 4 3 3 4 3 4 4 4 4 3 3 4 3 4 4 3 4 3 3 4 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 3 4 3 4 3 4 3 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 5 5 4 5 5 4 4 4 4 6 5 4 4 4 4 3 4 4 4 4 4 4 3 4 3 4 3 4 4 3 4 3 4 4 4 3 4 3 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 5 5 4 4 4 4 4 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 4 3 4 4 3 4 3 4 4 4 3 4 4 4 4 4 3 3 3 3 3 4 3 4 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 5 5 4 5 6 4 4 4 3 4 4 4 4 3 3 4 3 4 4 3 3 4 3 4 3 4 4 3 3 4 3 4 4 3 3 4 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 5 5 4 4 4 4 4 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 3 4 3 3 3 4 3 3 4 4 4 3 4 3 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 5 4 5 5 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 3 4 4 3 4 4 3 3 3 3 4 3 4 4 4 4 4 3 4 4 4 4 4 5 6 4 4 4 3 4 4 4 4 3 3 4 3 4 4 3 3 4 3 4 3 4 4 4 4 3 3 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 3 3 4 4 3 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 4 3 4 3 4 4 3 3 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 3 4 3 3 4 3 4 4 4 4 3 3 3 3 3 3 3 4 4 3 4 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 5 4 4 4 4 4 5 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 5 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 3 3 4 3 4 4 4 4 4 3 4 4 4 4 5 4 5 4 4 4 4 4 3 4 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 4 3 4 3 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 3 3 4 4 3 3 3 3 3 4 3 3 3 4 3 4 3 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 5 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 3 3 3 3 3 3 4 4 4 3 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 3 4 3 4 4 4 4 4 4 3 3 3 3 4 3 4 4 4 4 4 4 4 4 5 5 6 5 5 4 4 4 5 4 4 4 3 4 4 4 3 3 3 4 3 3 3 3 4 4 3 4 3 3 4 4 4 4 3 4 4 4 4 3 3 4 3 4 4 4 4 3 4 3 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 4 4 3 4 4 3 4 3 3 4 4 4 4 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 5 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 3 4 3 4 3 4 3 4 3 4 3 3 4 3 4 4 4 3 4 4 4 4 5 5 5 5 4 5 5 5 4 4 3 4 3 3 4 3 4 4 4 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 4 4 3 3 4 4 3 4 3 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 4 3 4 4 3 4 3 3 4 4 4 4 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 5 4 4 4 3 4 4 3 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 3 4 4 3 4 3 3 4 3 4 3 3 3 3 3 4 3 4 4 3 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 3 4 3 3 3 4 3 4 4 3 3 4 3 4 3 3 3 3 4 4 4 4 4 4 4 4 4 4 5 5 5 4 5 4 4 4 4 4 4 3 4 3 4 4 3 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 3 3 4 3 4 3 3 4 3 4 4 3 3 4 3 3 4 4 4 3 3 4 4 4 4 4 5 4 4 4 3 4 4 3 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 4 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 3 3 3 4 3 4 4 3 3 4 3 4 3 3 3 3 4 4 4 4 4 4 4 4 4 4 5 4 5 4 4 4 4 4 3 4 4 4 4 3 3 3 3 4 4 4 4 4 4 3 3 3 3 4 3 4 4 4 4 4 4 4 4 3 4 3 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 3 4 3 4 3 4 3 4 4 3 3 3 3 4 4 4 3 3 3 4 4 4 4 4 4 4 4 4 4 5 4 5 4 4 4 4 4 3 4 4 4 4 3 3 4 4 4 4 4 3 4 3 3 4 3 4 4 3 4 4 4 3 4 3 4 3 4 4 3 4 4 4 4 4 3 4 3 3 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 5 4 4 4 4 4 4 3 4 3 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 4 3 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 5 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 3 3 3 3 3 3 3 3 3 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 3 3 4 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 4 4 3 3 3 4 4 3 3 4 3 4 4 4 4 4 4 4 5 5 5 4 5 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 3 4 3 4 3 4 4 4 3 4 3 3 4 3 4 3 4 3 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 4 4 3 3 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 5 4 5 5 4 4 4 4 4 3 3 4 4 4 4 3 4 3 3 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 5 5 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 4 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 3 3 4 3 4 4 3 4 3 4 3 4 3 4 3 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 4 4 3 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 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 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 2 3 3 4 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 4 4 4 3 3 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 3 4 4 4 3 4 4 4 4 3 4 4 3 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 4 4 4 4 4 4 3 4 4 4 3 3 3 4 3 4 4 3 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 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 4 4 3 4 3 3 4 3 4 3 4 4 4 4 4 5 4 4 4 4 4 4 4 4 3 3 3 4 4 4 4 4 4 4 3 4 3 4 4 4 3 4 3 4 4 3 3 4 4 3 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 4 4 4 3 3 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 3 4 3 4 4 3 3 4 4 4 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 4 4 4 4 4 4 4 4 3 3 4 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 3 4 3 4 3 3 4 4 3 4 3 3 4 3 4 3 3 4 4 3 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 5 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 4 3 3 3 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 3 4 4 4 4 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 4 3 4 3 3 4 3 4 3 4 3 3 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 5 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 3 4 4 4 4 4 3 3 4 4 4 3 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 3 4 3 4 3 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 4 4 4 4 4 4 4 4 3 4 3 3 4 4 4 3 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 3 4 4 3 3 4 4 3 4 3 3 3 4 3 3 4 3 3 4 4 3 3 3 4 3 4 3 3 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 5 5 4 4 4 4 4 3 4 4 4 4 3 3 4 4 4 3 3 4 4 4 4 4 4 3 4 3 4 4 4 3 3 4 3 4 4 3 4 3 3 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 3 3 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 4 4 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 4 3 3 4 3 4 4 4 4 4 3 4 3 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 4 4 4 4 4 3 4 3 3 4 4 4 3 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 4 3 3 3 3 4 4 4 3 4 4 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 5 5 4 4 4 4 4 3 4 4 4 4 3 3 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 3 3 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 3 3 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 3 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 4 5 5 4 4 4 4 5 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 4 4 3 4 3 4 3 3 3 4 3 4 4 4 4 4 4 4 3 3 4 4 4 3 4 3 3 4 3 4 4 3 4 4 4 4 4 4 5 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 3 4 3 4 3 3 4 3 3 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 3 4 3 4 3 3 3 3 3 4 3 4 3 4 3 3 4 3 4 4 3 4 4 3 3 4 3 3 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 4 4 4 4 4 4 4 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 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 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 3 4 4 3 3 3 3 4 3 3 4 3 3 3 4 3 4 4 3 4 4 4 4 3 3 4 4 3 4 3 4 4 3 4 3 3 4 4 3 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 3 4 3 4 4 3 3 3 3 4 4 4 4 4 4 3 3 3 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 3 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 4 4 4 4 4 4 4 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 4 4 4 3 3 3 4 4 3 4 3 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 3 4 4 3 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 4 3 4 3 4 3 3 4 3 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 4 3 4 4 3 3 4 3 4 3 3 3 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 4 3 4 3 4 3 3 4 3 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 3 3 3 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 3 4 4 3 3 4 3 3 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 4 4 4 4 4 4 3 3 4 3 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 3 3 3 3 4 3 3 4 3 3 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 3 4 4 4 4 4 3 4 4 3 3 3 3 4 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 3 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 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 3 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 4 4 4 3 3 4 3 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 3 3 4 3 4 4 3 4 3 3 3 3 3 3 3 4 4 3 4 4 3 4 3 4 3 4 3 4 4 4 4 3 4 4 3 4 4 4 3 4 4 4 3 3 4 4 4 4 3 4 4 4 4 4 4 3 4 4 3 3 3 3 4 4 4 3 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 4 4 4 4 3 3 4 4 4 4 4 4 3 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 3 4 3 4 4 4 4 3 4 3 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 4 3 3 3 4 3 4 4 4 3 3 4 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 4 3 4 3 4 4 3 4 4 4 4 3 4 3 4 4 4 4 4 3 4 3 3 4 3 4 3 3 4 4 3 4 4 3 4 3 4 4 4 4 3 3 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 3 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 3 4 4 4 4 4 3 3 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 3 4 4 4 3 3 3 3 4 4 3 3 4 3 3 4 3 4 3 3 3 4 3 4 4 4 4 3 4 4 4 4 4 3 3 4 4 4 4 4 4 3 4 4 3 3 4 3 3 3 3 4 4 3 4 4 3 4 4 4 3 4 3 4 4 3 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 3 4 4 3 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 4 4 3 4 3 4 4 3 4 3 3 3 3 3 4 4 4 4 3 3 3 3 4 3 3 4 4 4 4 4 3 4 3 3 3 4 4 3 3 4 4 3 4 4 3 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 4 4 4 3 4 3 4 3 3 3 3 4 4 3 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 4 4 3 3 4 4 3 4 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 3 4 4 3 4 3 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 4 3 4 3 4 4 3 3 4 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 4 4 3 4 3 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 4 4 3 3 4 3 3 4 3 3 3 3 4 4 3 4 4 3 4 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 4 4 3 3 4 4 3 4 4 3 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 3 4 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 4 4 3 3 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 4 3 3 4 3 3 3 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 3 3 4 3 4 4 3 3 4 4 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 3 3 4 3 4 4 3 4 3 4 4 3 4 3 4 4 3 4 3 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 3 3 4 3 3 4 4 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 4 4 3 4 3 3 3 3 4 3 4 4 4 3 3 3 4 4 4 4 3 3 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 3 4 4 4 4 3 4 3 4 4 3 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 3 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 3 4 4 4 4 3 4 4 3 4 3 3 4 4 3 4 3 4 3 4 3 4 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 4 3 3 4 4 3 4 3 3 4 4 3 4 3 3 4 4 3 3 4 4 4 4 4 3 3 4 4 3 4 4 4 3 4 4 4 4 3 4 3 4 4 3 4 4 3 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 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 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 3 3 4 4 3 4 3 4 3 4 4 4 3 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 3 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 3 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 4 3 4 4 4 4 3 4 3 4 4 4 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 3 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 4 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 3 4 4 4 3 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 4 4 4 4 4 4 4 3 4 4 4 3 3 3 4 4 4 4 3 4 3 3 4 3 4 4 4 3 4 4 3 4 4 3 4 3 3 4 4 4 3 4 3 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 3 3 4 4 4 3 3 4 3 4 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 3 3 3 4 3 3 3 4 4 3 4 4 3 4 3 4 3 3 4 3 3 4 4 4 3 4 4 4 4 3 4 4 4 4 3 3 4 4 3 3 4 4 4 4 3 3 3 4 3 4 4 4 3 4 4 4 4 3 4 3 3 3 4 4 4 3 4 4 4 3 4 3 4 4 4 4 3 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 3 4 4 3 4 3 4 4 3 4 3 4 3 4 4 3 3 3 4 3 3 3 4 4 3 4 4 3 4 3 4 3 4 3 3 4 3 3 4 4 3 4 3 4 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 4 3 4 4 3 3 4 4 4 4 3 4 3 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 4 3 4 3 3 4 4 3 4 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 3 3 3 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 3 4 3 4 3 3 4 3 3 4 4 3 4 3 4 4 3 3 4 3 4 4 3 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 3 4 3 3 4 4 4 3 4 4 3 4 4 4 3 3 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 4 4 3 3 4 3 3 4 4 3 4 3 4 4 4 4 3 4 4 3 3 3 3 4 4 3 4 3 3 3 4 4 3 3 3 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 3 4 4 3 4 3 3 4 3 3 3 3 3 3 4 4 3 4 4 4 4 4 4 4 4 3 3 3 4 4 4 3 4 3 4 4 4 4 4 3 3 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 4 3 3 4 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 4 4 3 4 3 4 4 3 4 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 4 3 3 4 3 4 3 3 3 3 4 4 3 3 4 3 3 3 3 3 3 3 4 3 4 3 4 4 3 3 3 4 3 4 3 4 4 3 4 4 3 4 3 4 3 4 3 4 3 3 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 3 3 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 4 3 4 4 4 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 4 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 4 4 3 4 4 3 3 3 3 3 4 4 4 3 4 3 3 4 4 3 3 4 3 3 3 4 4 3 4 3 3 4 3 3 3 3 3 3 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 3 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 4 3 3 4 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 4 4 3 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 4 4 3 3 4 3 3 4 3 3 4 4 3 4 3 4 3 3 4 3 4 4 3 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 5 4 4 4 3 4 4 4 5 4 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 3 3 4 3 4 4 4 4 4 3 4 3 3 4 4 4 4 3 4 4 3 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 4 3 3 3 3 4 3 3 3 3 4 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 4 4 4 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 3 3 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 5 4 4 4 3 4 4 4 5 4 4 4 3 4 3 3 4 4 3 4 3 4 4 4 3 3 4 3 4 4 4 4 4 3 3 4 3 4 3 4 4 4 3 4 3 4 3 3 3 3 4 4 3 3 4 4 3 4 4 4 4 4 4 4 3 3 3 4 4 4 3 4 4 3 3 3 3 3 3 4 4 4 4 3 3 3 4 4 4 4 4 4 4 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 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 3 3 3 2 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 4 4 3 4 4 4 4 4 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 3 4 3 3 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 3 3 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 4 3 4 3 4 4 4 3 3 4 3 4 4 4 4 3 4 3 4 3 4 3 4 3 3 3 4 3 3 3 4 4 3 3 3 3 4 3 3 4 4 3 3 3 4 4 3 3 3 3 4 3 3 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 3 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 3 3 3 3 3 3 4 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 4 4 4 4 4 3 4 4 4 3 4 4 3 4 4 3 3 3 3 4 4 3 4 3 3 4 4 3 4 3 3 3 4 4 3 4 3 3 4 3 4 3 4 3 3 4 4 4 4 4 4 3 3 3 4 3 3 4 4 3 4 4 4 3 4 4 3 4 3 4 4 4 3 4 3 4 4 4 4 4 4 4 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 3 4 3 3 4 3 4 4 4 3 4 3 3 4 3 4 3 4 3 4 3 3 4 3 3 3 4 3 3 3 4 4 3 3 3 3 3 4 4 3 3 3 4 3 3 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 3 4 3 3 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 3 3 4 4 4 4 3 3 4 3 3 3 3 4 4 4 3 4 4 3 4 4 3 4 4 4 3 3 4 3 3 4 3 4 4 3 3 4 3 4 4 3 3 3 3 4 3 4 3 4 3 4 4 3 3 3 3 3 4 3 4 4 4 4 4 3 3 4 4 3 4 3 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 3 3 4 3 3 4 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 4 3 4 4 4 3 3 4 4 4 3 3 4 4 3 3 3 4 3 3 4 4 4 4 4 4 4 3 4 4 3 3 3 3 4 3 4 4 3 4 3 4 4 3 4 3 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 3 4 3 3 3 3 4 3 4 4 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 3 3 4 3 4 4 3 4 3 3 4 4 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 3 4 3 3 4 3 4 3 3 3 4 3 3 4 4 4 4 3 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 4 3 4 3 3 4 4 3 3 3 4 4 3 4 3 4 3 3 3 4 3 3 3 3 4 3 4 4 3 4 3 4 4 3 4 3 4 4 4 4 3 4 4 4 3 4 3 4 3 4 4 4 4 3 4 3 4 4 3 3 3 4 3 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 3 4 4 4 4 4 3 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 3 4 4 3 3 4 4 3 4 3 3 4 4 4 3 4 4 3 4 4 4 3 4 4 3 3 4 3 4 3 4 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 3 3 3 3 3 4 4 4 4 4 3 4 3 4 3 4 4 4 3 4 4 4 3 4 4 3 3 4 3 4 4 4 4 4 4 3 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 3 4 4 3 3 3 4 3 3 3 3 4 4 3 3 4 4 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 4 4 3 4 4 3 4 3 4 3 4 3 4 3 4 4 3 4 4 3 3 3 4 4 4 3 4 3 4 3 4 3 4 4 4 3 4 3 4 4 4 4 4 3 4 4 4 3 4 3 4 3 4 4 4 4 3 4 3 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 4 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 3 3 3 4 4 4 4 4 3 4 4 3 4 4 4 3 4 4 4 3 4 3 3 3 3 4 3 3 4 3 4 3 4 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 4 4 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 3 3 4 3 4 4 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 4 3 4 4 4 3 3 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 4 4 4 3 3 4 3 3 3 3 4 3 4 4 3 3 3 3 3 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 3 4 3 3 4 4 4 3 4 3 3 4 3 4 4 3 4 4 4 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 3 3 3 4 4 4 4 4 3 4 4 3 4 4 4 3 4 4 4 3 4 3 3 3 3 4 3 4 4 4 4 4 4 3 3 3 3 4 4 4 4 4 4 4 4 4 4 3 3 4 3 4 3 3 4 3 4 4 3 4 5 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 4 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 4 3 4 4 3 4 4 3 4 3 3 4 3 3 3 4 3 3 4 4 3 3 4 4 4 3 4 3 4 4 3 3 4 4 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 4 3 3 4 3 4 3 3 4 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 4 3 4 3 4 3 4 4 4 3 4 3 4 4 4 4 4 4 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 4 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 3 3 3 4 4 4 4 4 4 4 4 4 4 3 3 4 3 4 3 3 4 3 4 4 3 4 5 4 4 4 4 4 4 4 4 4 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 4 4 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 4 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 4 4 3 4 3 4 3 3 3 3 4 3 3 4 3 4 3 4 3 4 3 4 4 3 3 4 4 4 3 4 4 3 3 3 3 4 4 4 4 4 4 3 4 3 3 3 3 4 4 4 4 3 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 4 4 3 3 4 3 3 4 4 3 3 4 3 4 3 4 3 3 4 4 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 3 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 4 3 3 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 3 3 3 3 3 3 3 4 3 4 4 4 3 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 3 3 4 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 4 4 3 4 4 3 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 4 4 4 3 4 4 4 4 4 4 5 4 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 4 4 4 3 4 4 3 3 4 4 3 3 4 3 4 3 3 4 3 4 4 3 4 3 4 4 4 4 4 4 3 4 3 4 4 3 3 4 4 3 3 4 4 4 4 3 4 3 4 3 3 3 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 4 3 3 3 4 3 3 3 3 3 4 3 4 3 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 3 3 4 4 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 4 3 4 4 3 3 3 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 4 4 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 4 3 3 3 4 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 4 3 4 4 3 3 3 4 4 3 4 4 3 3 4 3 3 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 3 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 3 3 3 4 4 4 3 4 4 4 4 3 3 4 4 3 4 3 3 3 3 4 3 3 4 3 4 4 3 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 4 3 4 3 3 4 3 4 4 4 3 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 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 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 3 3 4 4 4 4 4 3 4 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 4 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 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 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 3 3 3 4 4 4 3 4 3 4 4 3 3 4 4 3 4 3 3 3 3 4 3 3 4 3 4 4 3 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 3 3 4 3 4 4 4 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 3 4 3 3 3 4 3 4 4 4 3 3 3 3 4 4 3 3 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 3 4 3 4 4 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 4 4 3 4 3 3 3 3 4 3 4 3 3 4 3 4 4 3 4 4 4 4 3 4 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 4 3 4 3 3 4 3 4 4 3 3 3 3 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 4 3 3 4 4 3 3 4 4 3 3 4 3 4 4 4 4 4 3 4 4 4 4 4 3 3 3 3 4 3 3 3 3 4 4 3 4 3 3 4 3 4 4 4 3 3 4 3 4 4 3 3 4 3 4 4 4 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 3 3 3 4 3 4 3 4 4 3 3 4 3 3 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 4 4 3 4 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 3 3 4 3 4 3 4 4 3 4 3 4 3 3 3 3 4 4 3 4 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 3 3 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 3 3 4 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 3 3 4 4 3 4 3 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 3 4 3 3 4 3 4 3 4 4 3 3 4 3 3 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 4 3 3 3 4 3 3 3 4 3 3 4 3 3 4 4 3 3 4 3 3 3 4 4 3 3 3 4 4 4 4 3 3 4 3 4 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 4 3 4 4 3 4 3 4 4 4 4 4 4 4 3 4 4 4 3 4 3 3 4 3 4 4 4 4 3 4 3 4 3 4 3 4 4 4 4 4 4 3 4 4 3 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 4 3 3 4 3 4 4 3 4 4 4 4 3 4 3 3 3 3 4 4 4 3 4 3 4 4 4 3 4 3 4 4 4 4 3 4 3 4 3 4 3 4 3 3 4 3 3 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 5 4 4 4 5 4 5 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 3 4 4 4 3 3 3 3 4 3 4 3 3 3 4 4 3 3 3 3 4 3 4 3 3 3 4 3 3 3 4 3 3 3 3 4 4 3 3 3 4 3 3 3 4 3 4 3 3 4 3 4 4 3 3 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 3 4 3 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 3 4 4 4 4 3 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 4 3 4 4 4 3 4 3 4 3 4 3 3 4 3 4 3 4 4 3 3 4 3 4 4 3 3 4 4 4 4 3 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 5 4 4 4 5 4 5 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 4 3 3 3 3 4 3 3 4 3 4 4 3 4 4 3 3 4 4 4 3 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 3 4 3 4 3 4 4 4 4 4 3 4 3 3 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 3 4 3 4 3 3 4 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 3 4 3 4 4 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 3 3 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 5 4 4 5 4 4 5 4 5 5 4 5 4 4 5 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 4 3 3 4 3 4 3 3 4 3 3 4 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 4 3 3 4 4 4 3 4 3 4 3 4 4 4 4 4 3 3 4 3 3 3 4 4 4 3 3 3 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 3 4 4 3 3 4 4 4 4 3 4 4 4 3 4 4 4 3 3 3 4 4 3 4 4 4 4 4 3 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 5 4 4 5 5 5 5 4 4 4 5 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 3 3 3 3 4 3 3 3 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 4 4 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 4 4 3 4 3 3 3 3 4 4 4 3 3 3 4 3 4 4 4 3 4 3 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 3 4 4 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 4 5 5 4 5 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 3 3 4 3 4 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 3 3 3 4 3 4 3 4 3 4 4 3 3 4 3 4 4 4 4 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 5 4 5 4 4 5 4 5 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 3 4 3 4 4 3 4 3 3 3 4 3 4 3 4 3 3 3 3 4 3 3 4 3 4 3 4 3 4 3 4 3 3 4 4 4 3 3 4 4 3 3 3 3 3 3 4 4 3 4 4 4 3 4 3 3 3 4 3 4 4 3 3 4 4 3 4 3 3 4 4 4 3 4 3 3 3 3 4 3 3 4 4 4 4 3 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 4 3 3 3 3 4 4 3 4 4 3 3 4 4 3 3 4 3 3 4 3 4 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 3 3 4 4 4 4 4 3 3 3 4 3 4 3 4 3 3 3 3 4 3 3 4 3 4 3 4 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 4 3 4 3 4 4 3 3 4 3 4 3 4 3 4 3 3 4 3 4 4 3 3 4 4 3 3 4 4 4 4 3 4 4 3 4 3 4 4 3 3 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 3 4 3 4 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 3 4 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 4 4 4 4 4 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 4 5 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 3 4 3 4 3 4 3 4 4 3 3 3 3 3 3 3 4 3 4 4 3 4 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 4 3 3 4 3 3 3 3 4 3 3 4 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 4 4 3 4 4 4 4 4 3 4 3 4 4 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 3 3 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 4 4 4 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 4 3 4 3 4 4 4 4 3 4 4 3 4 3 4 3 4 3 4 3 4 3 3 4 3 3 3 3 4 3 4 4 3 3 3 3 3 3 4 4 3 4 3 3 3 4 4 3 3 4 3 3 4 4 3 4 3 3 3 3 4 4 4 3 3 3 3 3 4 3 4 3 4 4 3 4 4 4 4 4 3 4 3 4 4 4 3 4 3 3 4 4 3 4 4 4 4 4 3 4 3 4 4 4 3 3 4 3 4 3 4 3 3 4 3 4 4 3 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 3 4 4 4 4 4 4 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 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 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 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 3 3 3 3 2 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 3 3 4 3 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 3 4 3 4 3 3 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 5 5 4 4 4 4 4 4 4 4 4 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 4 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 4 4 3 3 4 3 3 3 3 4 3 3 3 3 4 4 4 4 3 3 3 4 3 3 4 3 3 3 3 3 4 3 4 4 3 4 3 4 3 3 4 4 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 4 3 4 3 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 3 4 4 4 4 4 4 3 4 3 3 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 3 4 3 4 3 3 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 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 3 3 2 3 3 2 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 3 4 3 3 3 4 3 4 3 4 4 3 4 4 3 3 4 3 3 3 3 4 3 3 3 4 4 4 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 4 4 3 3 4 4 3 4 3 4 3 3 4 4 3 4 3 4 3 3 3 3 4 4 4 3 4 4 3 4 3 3 4 4 4 4 4 4 4 4 3 3 4 3 4 3 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 4 3 4 3 3 3 3 4 3 4 3 4 4 3 4 3 4 4 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 4 3 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 4 3 3 4 3 4 4 4 3 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 4 4 4 4 3 4 3 4 3 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 3 3 3 3 4 3 3 4 3 4 4 3 4 4 4 4 3 3 3 4 3 3 4 3 3 4 3 4 3 4 3 3 3 4 3 3 4 3 3 3 3 4 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 3 3 4 4 4 4 4 4 3 3 4 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 3 3 3 4 3 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 4 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 4 3 4 4 3 3 4 4 3 4 4 4 4 3 3 3 4 4 3 4 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 4 4 3 3 3 3 3 3 3 3 4 4 3 3 4 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 4 3 4 3 3 4 4 3 3 3 3 3 4 4 4 4 4 4 3 4 3 4 3 4 4 4 3 4 3 3 3 3 3 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 3 4 3 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 4 3 4 4 3 3 4 3 4 3 3 3 3 3 3 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 3 4 4 4 4 3 4 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 3 4 3 4 4 4 3 3 4 4 3 3 4 3 3 3 4 3 3 4 4 3 4 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 3 4 3 4 3 4 3 3 3 3 4 4 3 4 4 3 4 3 4 4 3 4 3 4 3 3 3 3 3 4 4 3 4 4 4 4 4 3 4 4 4 4 3 3 4 3 4 4 3 4 3 3 4 4 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 4 3 4 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 3 4 4 3 4 3 3 4 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 3 3 4 3 4 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 4 3 3 4 3 3 4 4 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 3 3 4 3 4 4 3 4 3 3 4 4 4 4 3 3 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 3 4 4 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 3 4 3 4 3 3 4 4 3 4 3 4 4 4 4 3 3 4 3 3 3 3 4 3 3 3 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 3 4 3 3 4 4 3 4 3 4 4 3 4 3 3 3 3 4 3 4 3 4 3 3 4 4 4 3 4 3 4 3 4 3 4 3 3 3 4 3 3 4 3 3 3 3 3 4 3 4 4 4 3 3 4 3 4 3 3 3 4 3 3 3 3 4 3 3 3 4 4 3 3 4 3 3 3 4 3 3 4 4 4 3 4 3 4 4 3 4 4 3 4 3 4 3 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 3 4 3 4 4 3 4 3 3 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 3 4 3 4 4 4 3 3 3 4 4 4 4 4 4 3 4 4 4 4 4 4 3 3 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 3 3 4 4 3 3 4 3 4 3 3 4 3 4 3 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 3 3 3 3 4 3 4 4 4 4 4 3 4 3 4 3 3 3 3 4 3 4 3 4 3 3 4 4 4 3 4 3 4 3 4 3 4 4 4 3 4 3 4 3 3 4 3 3 3 3 3 4 3 3 4 4 3 4 3 4 4 3 3 3 3 3 3 3 3 4 4 3 3 4 3 3 4 4 3 3 3 3 3 3 4 4 3 4 3 3 4 3 4 3 3 4 3 4 3 3 3 4 4 4 4 3 4 3 3 3 4 3 4 4 3 4 4 4 3 4 3 3 4 4 4 4 3 4 3 4 4 3 4 3 4 4 4 4 3 4 3 4 4 4 4 4 4 3 4 3 4 3 4 4 4 3 3 3 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 4 3 4 3 4 4 4 3 3 4 4 4 3 4 4 3 4 4 3 3 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 3 4 3 4 3 3 3 3 4 4 3 3 3 3 4 4 4 4 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 4 4 4 4 3 4 3 4 3 3 4 3 3 3 3 3 4 3 3 4 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 4 4 3 3 4 3 4 4 3 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 3 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 4 3 3 4 4 4 3 3 3 4 4 3 3 4 4 4 3 3 3 3 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 3 4 3 3 4 4 3 4 3 3 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 3 4 3 4 4 3 3 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 4 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 4 4 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 4 4 4 3 4 3 4 3 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 3 3 4 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 4 3 3 4 3 4 3 3 4 4 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 4 3 3 4 3 4 4 3 4 3 3 3 3 4 3 3 3 4 3 4 3 4 4 3 3 3 4 3 4 4 4 3 4 4 4 3 4 3 4 3 3 4 3 3 4 4 3 4 4 4 4 4 4 3 3 3 3 3 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 3 3 4 3 3 3 4 4 4 3 4 3 3 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 3 3 4 4 3 4 4 4 3 4 3 3 3 4 4 3 4 4 4 3 4 3 4 3 4 3 4 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 4 3 3 3 4 3 4 3 3 4 3 3 3 4 3 4 4 3 3 4 3 4 3 3 4 3 4 4 3 4 3 3 3 3 4 3 3 4 3 4 4 3 4 3 4 3 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 3 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 6 4 4 4 4 4 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 3 3 4 3 3 3 3 3 3 4 3 4 3 4 3 4 3 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 3 4 4 3 3 3 3 4 3 3 4 3 3 4 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 3 3 4 4 3 4 4 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 4 4 4 3 4 3 3 4 3 4 4 3 3 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 3 3 4 4 4 3 3 4 3 4 4 3 4 4 3 4 3 4 3 4 4 4 4 4 3 4 4 3 4 4 4 3 4 3 3 4 4 4 4 3 3 4 4 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 4 4 3 3 3 4 4 4 4 4 4 3 4 3 4 3 3 4 4 3 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 5 5 5 5 4 4 4 4 4 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 4 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 4 3 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 3 4 3 3 4 3 4 4 3 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 3 3 4 3 4 4 3 4 3 3 4 4 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 4 4 4 3 4 4 3 3 4 4 3 3 3 4 4 4 3 4 3 4 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 4 3 3 4 3 4 4 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 4 4 4 4 3 4 3 3 3 3 4 4 4 3 3 3 3 4 4 3 4 3 4 4 4 3 4 3 3 4 4 4 4 3 3 4 4 4 3 4 4 4 3 4 4 4 3 4 3 3 4 4 4 4 4 3 3 3 4 4 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 5 4 4 4 4 4 4 4 5 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 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 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 4 4 4 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 4 4 4 3 4 3 4 4 3 3 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 3 4 3 3 4 3 4 4 3 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 4 3 4 4 4 3 4 3 4 4 4 4 3 3 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 3 3 4 3 3 4 4 3 3 3 4 4 4 3 4 3 4 3 4 4 3 3 3 3 3 3 3 4 4 4 3 3 4 3 3 4 4 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 4 4 3 3 3 4 3 3 3 3 4 3 4 4 3 4 3 3 4 4 4 4 4 4 4 3 3 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 3 3 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 4 3 4 4 4 3 4 3 3 4 4 4 4 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 4 4 4 3 4 4 3 3 3 3 3 3 4 3 4 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 4 3 3 4 3 3 4 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 3 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 4 3 4 3 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 3 3 3 4 3 4 4 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 4 4 4 3 3 4 3 3 4 4 4 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 4 3 3 4 3 3 3 3 4 3 4 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 3 4 4 4 4 4 4 3 4 3 3 4 4 3 4 3 3 3 3 4 4 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 4 4 4 4 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 3 4 3 3 3 4 4 4 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 4 4 3 3 4 3 4 4 3 3 3 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 3 3 4 3 3 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 3 3 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 4 3 4 4 4 4 3 4 3 3 4 3 3 4 4 3 4 3 4 3 3 4 3 3 4 4 3 4 3 3 3 3 4 3 3 4 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 3 4 3 3 3 4 3 3 4 3 3 3 4 3 4 3 3 4 3 4 4 3 4 4 4 3 3 4 4 4 4 4 4 4 3 4 3 4 3 3 3 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 3 3 4 4 4 3 4 4 3 4 4 4 3 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 4 4 4 4 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 4 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 4 3 4 3 4 3 4 3 3 4 4 4 4 3 4 4 3 4 3 3 4 3 3 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 3 3 4 3 4 4 4 4 4 3 4 3 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 3 3 3 4 3 4 3 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 4 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 4 4 3 4 3 4 4 3 3 3 4 3 4 3 4 4 3 3 4 3 3 4 3 4 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 4 3 4 3 3 4 3 3 3 4 4 3 3 4 4 3 4 3 3 4 4 3 4 4 4 3 4 4 4 3 4 3 4 3 4 3 4 3 3 4 4 4 3 4 3 4 4 4 4 3 3 3 3 4 4 4 3 4 3 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 3 4 3 4 4 4 3 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 5 4 4 4 4 5 4 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 4 4 3 3 4 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 4 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 4 4 4 3 3 4 4 4 4 3 4 3 4 4 3 3 4 3 4 4 3 3 3 3 4 4 4 3 4 3 3 3 3 3 4 4 3 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 5 4 4 5 4 4 5 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 3 3 4 4 3 3 4 4 3 4 3 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 3 3 4 3 4 3 3 4 4 4 3 3 3 3 4 3 3 4 3 3 3 3 3 4 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 4 3 3 4 3 4 3 4 3 4 3 4 3 3 3 4 4 4 4 4 3 3 3 4 4 3 3 4 4 3 4 3 3 4 4 3 4 4 3 4 3 4 3 3 4 4 3 4 4 4 4 3 4 4 4 3 4 3 4 4 3 3 3 3 3 4 4 3 4 4 3 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 3 4 3 3 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 5 5 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 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 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 4 4 3 3 4 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 4 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 4 3 4 3 3 3 4 3 4 3 3 4 3 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 3 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 3 3 4 4 3 3 4 4 3 4 3 3 4 4 3 4 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 3 3 4 3 3 3 4 4 3 4 4 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 4 4 3 4 3 4 4 3 4 3 3 4 3 3 3 3 3 3 3 4 3 4 3 4 4 3 4 4 3 4 3 3 3 3 3 4 3 4 4 3 3 3 4 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 4 4 4 3 4 3 4 3 3 4 4 3 4 4 4 4 3 4 3 4 4 4 3 3 3 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 4 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 4 4 3 3 3 3 3 3 4 4 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 4 4 3 3 3 3 4 3 3 4 3 4 4 3 4 3 4 3 4 4 3 4 3 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 3 3 4 3 3 4 3 3 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 3 4 4 3 4 3 4 3 3 4 3 4 3 3 3 3 3 4 3 4 3 3 4 3 4 4 3 3 4 3 4 3 4 3 4 4 4 3 4 4 3 3 3 4 3 4 3 4 3 4 3 4 3 3 4 3 4 4 3 3 3 4 3 3 3 3 4 3 3 4 3 4 3 3 3 4 4 3 4 4 3 3 3 4 3 4 4 3 4 4 3 4 4 4 3 3 3 4 4 3 4 3 4 4 4 4 4 4 4 3 4 3 4 3 3 4 4 4 3 3 3 3 4 4 4 3 4 4 3 4 3 3 3 4 3 4 4 4 3 4 4 4 4 3 3 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 3 3 3 4 4 4 4 4 4 4 4 4 3 3 3 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 1 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 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 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 3 4 3 3 3 3 4 4 4 3 4 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 4 4 3 3 3 3 4 3 3 4 3 4 4 3 4 4 4 3 4 4 3 4 3 3 4 4 4 4 3 4 4 4 3 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 3 3 3 4 3 3 4 3 3 4 4 3 4 3 4 4 4 4 4 3 4 3 4 4 4 3 3 4 3 4 4 3 4 4 3 3 3 3 3 4 3 4 3 3 4 3 4 4 3 3 4 3 4 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 3 4 4 4 3 4 3 4 3 4 4 3 3 3 4 4 3 4 3 3 3 4 3 4 4 3 3 4 4 3 4 4 3 4 4 4 3 4 4 3 3 3 4 4 3 4 4 3 4 4 4 4 3 4 3 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 4 3 3 3 4 3 4 3 4 3 4 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 4 3 4 4 3 4 3 4 4 4 3 4 4 4 3 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 3 4 4 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 3 4 4 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 4 4 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 4 4 3 4 3 4 4 3 4 3 4 3 3 4 3 4 3 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 4 4 3 4 3 4 4 3 4 3 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 3 3 4 3 4 4 3 4 4 4 3 3 4 4 3 4 3 3 4 3 4 4 3 4 3 4 4 4 3 4 4 4 3 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 3 3 4 3 3 4 4 4 3 4 3 3 3 4 3 4 3 3 3 3 4 3 3 3 4 4 4 3 4 4 4 4 3 4 3 4 4 4 4 3 3 4 4 3 4 3 4 4 3 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 4 3 4 3 4 4 4 4 4 4 3 4 4 3 3 4 3 4 4 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 4 4 3 3 4 3 4 3 3 3 3 3 4 3 4 4 3 3 3 3 4 4 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 4 3 3 4 4 4 4 4 3 3 3 3 3 3 3 3 4 4 3 4 3 3 3 4 3 3 4 3 3 4 4 3 4 3 4 4 3 4 3 4 3 4 4 4 4 3 3 4 3 3 4 4 4 4 3 4 4 4 4 4 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 3 4 4 4 4 3 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 3 3 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 4 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 4 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 4 3 4 4 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 4 4 4 4 4 4 4 3 3 4 4 4 3 4 4 3 4 4 3 3 3 4 3 4 4 4 3 4 3 3 4 3 4 4 4 4 3 4 3 3 3 4 3 3 4 3 4 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 4 4 4 4 3 3 3 3 3 3 3 3 4 4 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 4 4 4 4 3 4 4 4 3 3 4 4 4 4 4 4 3 4 3 4 3 4 4 4 4 3 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 3 4 3 4 4 3 4 3 3 3 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 3 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 4 3 4 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 3 3 3 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 3 3 3 3 4 4 4 3 4 3 4 4 3 3 3 3 4 4 3 4 4 3 4 3 3 4 4 4 4 3 4 4 4 3 3 4 4 3 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 4 4 3 3 3 3 3 4 3 4 3 3 3 3 4 4 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 4 4 3 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 4 3 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 4 4 3 4 4 3 4 4 3 4 3 4 3 4 4 4 4 4 4 3 4 3 4 4 4 4 4 3 4 4 3 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 4 3 4 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 4 3 3 4 4 4 3 3 4 4 3 4 3 3 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 3 3 4 4 3 4 3 4 4 3 4 4 4 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 3 3 3 3 4 4 4 3 4 3 4 4 3 4 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 4 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 3 3 4 3 4 3 4 4 3 3 3 3 4 4 4 3 3 4 4 3 4 4 3 4 3 3 4 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 3 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 4 4 4 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 4 4 3 3 4 4 3 4 3 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 4 3 3 4 3 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 4 3 3 4 3 4 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 4 4 4 4 4 4 3 3 3 3 4 4 3 4 3 3 3 4 4 4 3 4 3 3 4 3 4 3 4 3 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 4 3 3 4 4 4 4 3 4 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 4 3 4 4 3 4 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 4 4 3 3 4 3 4 3 3 3 4 3 4 3 4 4 3 3 3 3 4 4 4 3 3 3 3 4 4 4 3 4 4 3 4 3 3 4 4 3 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 4 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 4 4 4 3 4 3 3 3 3 3 4 4 3 3 3 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 4 4 3 3 4 4 3 4 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 3 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 3 4 4 3 3 4 3 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 3 3 4 4 4 3 3 4 4 4 4 4 3 4 4 4 4 3 3 4 3 3 4 4 4 4 4 4 3 3 3 3 4 4 3 4 3 3 3 4 4 4 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 4 3 3 3 3 4 4 3 3 4 4 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 3 3 4 4 3 3 4 3 4 3 4 4 3 4 3 4 3 3 3 4 3 4 4 3 4 4 3 4 4 3 4 4 3 3 4 4 4 3 4 4 4 3 4 3 3 4 4 3 4 3 4 4 3 3 4 3 4 4 4 4 3 3 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 4 3 3 3 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 4 4 3 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 3 4 4 4 4 3 4 3 3 4 3 3 4 4 3 3 4 4 3 4 4 4 4 3 4 4 4 4 3 4 4 4 4 3 3 3 4 4 4 3 3 3 4 3 3 3 4 3 3 4 4 3 4 3 4 4 4 4 4 3 3 4 3 4 3 3 3 3 4 3 3 3 3 4 4 3 4 3 4 3 3 3 4 3 4 4 4 4 3 4 4 3 4 4 3 3 4 3 4 3 4 4 4 3 3 4 3 3 3 4 3 3 3 4 4 3 3 3 4 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 4 3 4 3 4 3 3 4 3 4 4 4 3 4 4 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 4 3 4 3 4 3 3 4 4 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 4 4 3 3 4 3 4 4 4 4 3 3 3 4 3 4 4 4 3 4 3 4 3 3 4 4 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 4 3 3 4 4 4 3 4 4 3 3 3 3 3 3 4 4 3 4 3 3 4 4 3 3 3 3 3 3 3 3 4 4 3 3 3 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 3 3 4 4 4 4 4 4 4 3 4 3 3 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 4 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 4 4 4 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 4 3 4 4 3 3 4 3 4 4 3 3 3 4 4 3 3 3 3 3 4 3 3 3 4 4 3 4 3 3 3 4 4 3 3 4 3 4 4 3 4 4 4 4 3 4 3 3 4 4 3 4 3 4 4 3 3 4 3 4 4 3 4 3 4 3 3 4 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 4 4 3 3 4 4 3 4 3 4 4 4 3 4 3 4 3 3 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 5 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 4 4 4 4 4 4 3 4 3 3 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 4 4 4 4 4 3 4 4 3 4 4 3 4 3 3 3 4 4 3 3 4 3 4 3 3 4 3 4 3 4 3 3 4 4 4 4 4 4 3 3 4 4 4 4 4 3 3 3 4 4 3 4 4 3 4 3 3 3 4 4 3 3 3 3 3 3 4 4 3 4 3 3 3 4 4 3 3 3 3 4 3 4 3 4 4 3 3 4 4 3 3 3 4 4 4 4 3 4 3 3 3 3 4 4 3 3 3 3 4 3 4 4 3 4 3 4 3 4 3 3 3 4 4 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 4 4 3 4 3 3 3 3 4 4 3 4 3 3 4 3 4 4 3 3 4 4 3 3 3 4 4 3 4 4 4 3 4 3 3 4 4 4 4 3 4 4 3 4 4 4 4 3 3 3 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 3 4 4 3 3 4 3 4 4 3 4 4 4 4 3 4 4 4 3 3 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 4 4 4 3 3 3 4 4 3 3 4 4 3 3 4 4 4 3 4 4 3 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 3 3 4 3 3 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 3 3 4 3 3 4 3 4 4 4 4 4 4 3 4 4 4 4 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 3 3 3 4 3 3 3 4 3 4 3 4 3 4 3 3 4 3 4 3 4 4 3 4 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 3 3 3 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 4 4 4 3 3 4 4 3 3 3 4 3 3 3 3 3 4 4 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 3 3 3 4 3 4 4 4 3 4 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 4 4 3 3 4 3 3 4 3 4 3 3 4 4 4 4 3 4 4 4 4 4 3 4 3 3 4 3 4 4 4 4 4 3 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 4 4 4 3 4 3 3 4 3 3 4 3 3 3 4 4 3 3 4 4 4 3 3 3 4 4 4 4 4 3 3 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 3 4 4 4 4 3 4 4 4 3 4 4 4 3 3 3 3 3 3 3 4 3 3 3 4 3 4 4 4 4 3 4 4 3 4 4 3 3 4 4 3 3 4 3 3 3 4 3 4 3 3 3 4 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 4 3 3 3 4 3 4 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 4 3 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 3 3 4 3 4 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 3 3 4 4 3 4 3 4 3 4 4 3 3 4 4 3 3 4 3 4 3 3 4 4 3 3 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 3 4 4 3 3 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 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 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 4 4 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 4 3 4 3 4 4 3 4 3 3 3 3 3 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 3 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 3 3 3 3 4 3 4 3 3 3 3 3 3 4 4 4 3 4 4 3 4 4 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 3 4 4 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 4 3 3 4 3 4 3 3 4 4 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 4 3 3 4 4 4 3 4 4 3 4 4 3 3 4 3 3 3 4 3 3 4 3 4 3 4 3 4 3 4 4 3 3 4 4 3 3 4 3 3 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 4 3 4 3 4 4 3 4 3 3 3 4 3 4 3 4 4 4 3 4 3 3 3 3 3 4 4 3 4 4 4 3 4 3 3 3 4 4 4 4 3 3 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 3 3 4 4 4 3 3 3 4 4 4 4 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 4 4 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 3 3 3 3 4 4 4 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 4 4 4 4 3 3 3 3 3 3 4 3 4 4 3 3 3 4 4 3 4 3 3 4 4 4 4 3 4 3 4 4 4 4 4 4 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 3 4 4 4 4 3 3 4 3 3 4 3 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 4 4 3 4 3 3 3 4 3 4 3 4 4 4 3 4 3 3 3 3 4 4 4 3 4 3 3 3 3 3 4 4 3 4 3 3 4 4 3 4 3 3 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 3 4 4 3 3 3 4 4 4 4 4 4 4 4 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 4 3 3 3 4 4 4 4 4 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 4 4 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 4 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 4 3 3 4 3 3 4 3 4 4 4 4 3 3 4 3 4 4 3 4 4 4 4 3 4 3 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 3 4 3 4 4 4 3 4 4 4 3 4 3 3 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 4 3 3 3 3 4 4 3 3 3 3 4 4 3 3 3 3 3 4 4 3 4 3 3 4 4 3 4 3 3 3 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 3 4 3 3 3 4 4 3 4 4 3 3 4 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 4 4 4 4 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 4 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 4 4 3 4 3 4 3 4 4 4 4 4 3 4 3 4 4 3 3 4 3 4 3 4 4 3 4 4 3 3 3 4 3 4 4 3 3 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 3 4 4 4 3 3 3 4 4 4 4 4 4 4 3 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 3 3 4 4 3 4 3 3 4 3 3 3 3 3 3 4 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 4 4 4 3 4 3 3 4 4 4 4 3 4 3 4 3 4 4 3 4 4 3 3 4 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 4 3 4 4 3 3 3 3 3 4 3 3 3 3 4 3 3 4 4 3 3 4 3 3 3 3 4 3 3 4 4 3 4 3 3 3 3 4 3 4 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 4 3 4 3 4 3 3 3 3 3 3 3 3 4 4 4 3 3 4 3 4 4 3 4 3 4 4 3 3 4 3 3 4 3 4 4 4 4 3 3 4 3 4 3 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 4 4 3 4 3 4 3 4 4 4 3 4 3 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 3 4 4 4 4 4 4 4 3 4 4 4 3 4 3 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 4 4 3 3 3 4 4 3 3 3 4 3 4 3 4 4 3 3 4 3 4 3 3 4 3 3 3 3 4 3 4 3 4 4 3 4 4 4 4 3 3 3 4 3 4 3 4 4 4 4 4 4 4 4 4 3 3 4 4 3 4 4 4 4 3 4 4 4 3 4 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 4 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 3 4 4 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 4 4 4 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 4 3 4 4 3 3 3 4 4 3 3 3 3 4 4 3 4 3 4 3 3 3 3 3 3 3 4 4 3 4 3 4 4 3 3 4 3 4 3 3 4 3 3 4 3 4 4 4 4 3 4 4 3 3 4 3 3 4 3 4 3 3 4 3 4 4 3 4 3 3 4 4 3 4 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 3 4 3 4 3 4 3 4 4 4 4 4 3 4 3 3 4 3 4 4 4 4 3 4 4 3 3 3 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 4 4 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 4 4 3 4 3 4 3 3 4 3 3 3 3 3 4 4 3 3 4 3 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 3 4 4 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 3 3 3 4 3 4 3 4 4 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 3 4 3 3 4 3 3 3 4 4 3 3 3 3 4 3 3 4 4 3 4 4 3 3 3 4 3 4 4 4 4 4 4 3 4 3 4 3 3 4 3 4 3 4 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 3 3 4 3 4 4 3 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 4 3 4 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 4 4 4 3 3 4 4 4 4 3 4 3 4 3 4 4 3 4 4 3 3 3 4 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 4 3 4 3 3 4 3 3 4 4 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 4 4 3 4 3 4 4 3 4 3 4 4 3 3 4 3 3 3 4 3 3 4 3 3 3 4 4 3 3 3 3 4 4 4 4 4 3 4 3 4 4 4 3 4 4 4 3 3 4 4 4 3 4 4 4 4 3 4 4 4 3 3 4 3 4 4 3 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 4 4 4 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 4 4 3 4 4 4 3 3 4 4 3 4 4 3 3 4 3 4 3 4 3 3 4 4 3 3 4 4 4 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 4 3 4 3 3 4 3 3 3 4 3 3 4 4 3 3 4 3 4 4 4 3 3 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 3 4 4 4 4 3 3 4 3 3 4 3 3 4 3 4 4 4 4 3 4 3 3 4 4 3 4 3 3 4 3 4 4 4 3 4 3 4 4 4 3 3 4 3 4 4 4 4 3 3 4 3 4 4 3 3 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 4 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 4 3 4 4 4 3 4 4 3 3 3 4 3 3 4 3 4 4 3 3 3 3 4 3 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 3 3 3 3 4 3 4 4 3 4 3 3 4 4 3 4 3 4 4 4 4 4 3 4 3 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 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 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 4 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 4 3 3 3 4 4 4 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 3 4 4 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 4 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 4 4 4 3 4 3 4 4 3 3 4 3 3 3 3 4 3 4 3 3 4 3 4 4 3 4 3 4 4 4 3 3 3 4 3 3 4 4 4 3 4 3 4 3 4 4 4 3 4 3 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 3 3 4 4 4 4 4 4 3 4 4 3 4 3 4 4 4 3 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 4 3 4 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 3 4 3 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 4 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 4 3 4 3 4 3 4 3 3 3 4 4 3 3 3 4 4 4 4 3 4 4 4 4 3 4 4 4 3 3 4 4 3 4 4 3 4 4 4 4 4 4 3 4 3 3 3 4 3 4 4 4 4 4 4 3 4 4 4 3 3 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 3 4 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 3 3 4 3 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 4 4 3 3 4 3 4 3 3 4 3 3 4 4 3 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 3 4 4 4 4 4 3 3 4 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 4 3 3 3 3 3 3 3 4 4 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 4 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 4 3 4 4 4 3 3 3 4 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 4 4 3 4 4 3 4 3 3 4 3 4 3 4 4 3 4 3 4 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 4 3 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 4 4 3 4 4 3 4 3 3 4 4 3 4 4 3 4 3 4 3 3 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 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 4 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 4 3 3 4 3 4 4 3 4 3 3 3 3 3 4 3 3 4 3 3 4 4 4 4 3 4 3 4 4 3 4 3 4 4 4 4 3 3 4 3 4 4 4 3 4 3 4 4 4 3 4 4 3 3 4 4 3 4 4 4 4 3 4 3 4 3 4 4 3 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 3 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 4 3 3 3 4 4 3 3 4 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 2 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 4 3 4 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 4 4 4 3 3 4 4 3 3 3 4 4 4 3 3 3 3 4 3 4 3 3 4 4 3 3 4 4 4 4 4 4 3 3 4 3 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 3 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 2 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 4 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 4 3 3 3 4 4 3 4 4 3 4 4 4 3 4 3 4 4 4 4 4 3 3 3 3 3 3 3 4 3 4 4 3 3 3 4 4 4 3 3 3 3 4 3 4 4 4 3 3 3 4 4 4 3 3 4 3 4 3 3 4 3 4 4 3 3 3 3 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 4 3 4 4 3 3 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 3 4 3 3 4 3 4 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 4 3 3 4 3 4 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 4 4 3 3 4 3 3 4 3 3 4 4 4 3 3 3 3 4 4 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 4 4 3 4 4 3 4 4 4 3 3 3 4 4 3 3 4 4 3 4 3 3 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 4 3 4 4 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 3 3 3 3 4 3 4 3 3 4 4 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 4 4 3 3 3 4 3 3 4 4 4 3 4 4 3 3 3 4 3 4 4 3 3 3 4 3 3 4 4 4 4 4 3 4 4 3 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 3 3 4 4 4 4 4 4 3 4 3 4 4 4 3 4 4 3 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 5 3 4 4 4 4 4 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 4 3 4 3 3 3 3 4 4 3 4 3 4 4 4 3 4 3 4 4 3 3 4 3 4 4 3 3 3 4 3 4 4 3 4 3 4 4 3 3 3 3 4 4 4 4 4 4 4 3 4 4 3 4 3 4 3 3 3 4 4 3 4 4 4 3 4 4 3 3 3 4 4 4 4 4 4 4 3 3 4 3 3 4 3 4 3 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 5 3 4 4 4 4 4 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 4 3 4 4 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 4 3 3 4 3 3 4 3 3 3 4 4 3 4 3 3 4 3 4 3 4 3 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 3 4 3 4 3 4 3 4 3 4 4 4 4 3 3 3 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 3 4 4 3 3 4 3 3 4 3 4 4 3 4 3 4 4 4 4 3 3 4 3 3 4 3 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 3 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 4 4 3 3 3 4 3 3 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 4 4 3 4 3 4 3 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 3 4 4 4 4 4 3 4 3 3 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 4 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 3 4 3 4 3 3 3 4 3 4 3 4 3 4 3 3 4 3 4 3 3 4 3 4 4 3 4 3 3 3 4 4 3 4 3 4 3 3 4 3 4 3 3 4 3 4 3 3 3 4 4 4 3 3 3 3 3 4 4 4 4 3 4 3 3 4 3 4 3 4 4 4 3 4 4 3 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 4 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 4 4 3 4 4 3 3 4 4 3 4 3 3 4 3 3 4 4 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 4 4 3 4 3 3 4 3 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 3 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 4 3 3 3 4 3 3 3 3 4 3 3 4 4 3 4 3 3 4 4 3 3 3 4 3 3 4 3 3 4 3 4 4 4 3 4 4 3 4 4 4 4 3 4 3 4 4 4 3 3 4 3 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 3 3 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 4 4 3 4 3 3 4 4 3 4 4 3 4 3 4 4 4 4 3 3 3 4 4 3 4 3 4 4 3 4 4 3 3 4 4 4 4 3 4 3 3 3 4 4 3 3 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 3 3 4 4 4 4 3 4 3 4 4 4 3 4 3 4 4 3 4 3 4 3 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 4 3 4 3 3 3 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 4 4 3 3 4 4 3 4 4 4 3 3 4 3 4 4 3 3 4 3 4 3 3 4 3 4 4 3 3 4 3 4 4 4 4 4 4 3 3 4 4 3 3 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 4 3 4 3 4 4 3 3 4 4 4 4 3 4 3 4 3 4 3 4 3 4 4 3 4 3 3 3 4 3 3 4 4 3 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 4 3 4 4 3 4 4 3 3 4 3 4 3 3 3 4 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 4 3 4 3 3 4 4 3 4 4 3 4 3 4 3 3 4 4 4 4 3 3 4 3 3 4 4 4 4 3 4 3 4 3 4 3 4 3 4 3 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 4 4 4 3 4 3 3 4 3 3 3 3 4 4 3 3 3 3 4 3 4 3 3 3 4 3 4 4 3 3 4 3 3 4 3 3 3 4 3 3 4 4 3 4 3 4 4 4 3 4 4 3 4 4 4 4 3 4 3 4 4 4 4 3 4 3 4 3 3 4 3 4 4 4 4 4 3 3 3 4 3 4 3 3 4 4 4 4 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 3 4 3 3 4 4 3 3 4 3 4 3 3 4 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 4 4 3 3 4 3 4 3 4 3 3 3 3 3 3 4 4 3 4 3 3 4 3 3 3 4 3 3 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 3 3 3 3 4 3 4 3 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 3 4 4 4 4 3 4 4 4 4 3 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 3 3 3 3 4 4 3 4 3 3 3 4 3 4 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 3 3 4 4 4 4 3 3 4 3 4 3 4 4 4 3 4 3 3 4 3 3 4 3 4 3 3 3 4 4 3 3 4 3 4 4 3 3 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 4 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 4 3 3 3 3 4 3 3 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 4 3 3 3 4 3 4 3 4 3 4 3 3 3 4 3 4 3 3 4 3 4 3 3 4 4 4 3 4 4 3 3 3 4 3 4 4 3 3 3 4 3 3 4 3 3 4 4 3 4 3 3 3 3 4 3 4 4 4 3 4 4 3 3 4 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 4 4 3 3 3 4 3 3 3 3 4 3 4 3 3 3 4 3 4 3 4 3 3 3 4 3 3 3 4 3 3 3 4 3 3 3 4 3 4 4 3 3 4 3 4 3 4 3 4 3 4 3 3 3 3 3 3 4 4 3 4 4 3 4 3 3 3 4 4 4 3 4 4 3 3 3 4 3 4 4 4 3 4 3 3 4 3 3 3 4 4 4 3 4 4 3 4 4 4 3 4 3 4 4 3 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 4 3 4 3 4 4 3 3 4 3 4 4 3 4 3 3 3 3 3 4 4 3 3 4 4 3 4 3 3 4 3 3 3 4 4 4 3 4 4 3 4 4 4 4 3 4 3 4 4 3 3 4 3 4 3 3 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 4 4 3 4 3 3 4 3 3 4 3 3 4 3 3 3 4 4 3 4 3 3 4 3 4 3 3 4 3 3 4 4 4 3 4 4 3 3 4 3 4 4 3 4 4 4 3 4 4 4 3 3 4 3 4 4 3 4 3 4 3 4 4 3 4 4 3 4 3 4 4 3 3 4 3 3 4 4 3 4 3 3 4 4 3 3 4 3 3 3 4 4 4 4 4 4 4 4 3 4 3 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 4 4 3 4 3 4 3 3 4 4 3 3 4 3 3 3 4 4 3 3 3 3 3 4 3 4 3 4 3 3 4 3 3 4 3 4 4 4 3 4 3 3 3 4 3 3 3 4 3 3 4 3 4 4 3 3 4 4 3 4 4 3 3 4 3 4 3 4 3 3 4 4 3 3 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 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 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 4 3 4 3 4 3 3 3 3 4 4 4 3 3 3 3 3 3 3 3 4 3 4 4 3 4 4 3 3 3 3 3 4 3 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 3 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 4 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 4 3 4 4 3 4 3 3 4 3 3 4 4 3 4 4 3 4 3 4 4 4 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 3 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 4 3 3 4 4 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 4 3 4 3 3 4 3 4 3 4 3 4 3 4 4 3 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 3 3 4 3 4 4 3 4 4 3 4 4 3 4 3 3 4 3 4 3 3 4 3 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 4 3 3 4 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 4 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 4 3 3 4 3 4 3 4 3 3 3 3 4 3 4 3 3 4 3 4 3 3 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 3 3 4 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 3 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 4 3 3 3 3 3 3 3 4 3 4 4 3 4 4 3 4 3 4 4 3 3 3 3 3 4 3 3 4 4 3 4 3 3 4 3 3 4 3 3 3 3 4 4 3 4 3 3 4 3 4 4 4 4 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 3 4 4 3 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 4 4 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 4 4 3 4 4 3 3 3 3 4 3 3 4 3 3 4 4 3 3 3 3 3 4 3 3 4 3 4 3 4 4 3 3 3 3 4 4 3 4 3 3 4 3 4 4 4 3 3 4 4 3 3 3 4 3 4 4 3 4 3 3 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 3 4 3 4 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 4 3 4 4 3 3 4 3 4 3 3 3 3 4 3 3 4 4 4 3 3 3 4 3 4 3 4 3 4 3 3 3 4 3 4 4 3 3 4 4 3 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 3 3 3 3 3 4 4 3 3 4 3 4 4 4 3 4 3 4 4 4 4 4 4 3 4 3 3 4 3 3 4 3 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 4 3 4 4 3 3 3 3 3 3 3 4 3 4 3 4 3 4 4 3 4 3 3 3 3 3 4 3 3 3 4 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 4 4 3 4 4 3 4 4 4 3 4 4 3 4 4 3 4 3 3 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 3 4 4 4 3 4 3 4 3 4 3 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 4 4 3 4 3 3 3 3 4 3 3 3 3 4 4 3 4 3 3 4 3 4 3 3 4 3 3 4 4 3 4 3 4 3 3 4 4 3 4 4 3 3 3 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 4 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 3 4 4 3 4 4 4 4 3 4 3 3 4 3 3 4 3 4 4 4 4 3 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 3 4 3 3 4 4 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 4 3 3 3 4 4 3 4 3 3 4 3 4 4 4 3 4 3 4 4 3 4 3 3 4 4 4 4 4 4 4 4 4 3 3 4 4 3 4 3 4 3 3 4 3 3 3 3 4 4 4 4 4 4 4 3 4 3 3 3 4 4 4 4 4 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 4 4 3 3 3 4 4 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 4 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 4 4 3 4 3 3 3 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 4 3 4 4 4 3 4 3 4 4 3 4 4 4 4 3 4 4 3 4 3 3 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 3 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 4 3 4 4 3 3 4 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 4 4 4 3 4 4 4 4 4 3 3 3 3 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 3 3 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 3 3 3 4 3 4 3 3 3 4 3 4 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 3 4 4 3 4 3 4 3 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 4 4 3 4 4 3 3 4 3 4 4 3 3 3 4 3 4 3 3 3 3 3 4 4 3 3 4 3 4 4 3 3 4 3 4 3 4 4 4 4 3 4 3 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 4 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 4 4 3 3 4 4 4 4 4 3 4 3 3 4 4 4 3 3 4 3 3 3 3 3 3 3 4 3 4 4 3 3 3 4 3 4 3 3 4 4 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 4 3 4 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 3 4 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 4 3 4 4 3 3 4 3 3 4 4 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 3 4 4 3 4 3 4 3 3 4 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 3 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 4 4 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 4 3 4 4 3 3 3 3 3 3 3 4 3 3 3 4 4 4 4 4 3 4 3 4 4 3 4 3 4 3 3 3 3 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 4 4 3 3 4 3 4 3 3 3 3 3 4 3 4 4 3 3 3 3 4 3 3 4 3 3 4 4 3 4 3 4 4 3 4 3 4 4 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 4 4 3 4 3 4 4 3 4 3 3 4 3 4 3 4 4 3 3 4 3 4 4 3 4 3 4 3 4 3 4 4 4 3 4 4 3 4 3 4 4 4 3 4 3 4 4 3 4 4 4 3 3 4 4 3 4 3 4 3 3 4 4 4 4 4 4 4 4 4 3 3 4 3 4 4 4 4 4 3 4 3 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 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 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 4 3 4 4 3 4 3 4 4 3 3 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 3 3 3 3 3 3 3 4 3 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 3 4 4 3 3 4 3 3 3 4 4 4 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 3 3 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 3 4 4 4 4 4 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 3 4 4 3 4 3 4 4 3 4 4 4 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 4 3 3 4 3 3 3 3 4 3 3 4 3 4 3 3 4 4 3 3 3 4 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 3 4 4 3 3 3 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 3 3 4 3 3 4 4 4 4 4 4 4 3 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 4 4 4 4 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 4 4 3 3 4 3 3 3 3 4 3 4 4 3 3 4 3 3 4 3 3 3 3 3 3 4 4 3 4 4 4 3 4 4 4 4 4 4 3 4 3 3 3 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 4 4 3 3 4 3 4 3 3 4 4 3 4 3 3 3 4 3 3 3 3 3 4 3 4 4 3 4 3 4 4 3 3 4 3 3 3 3 4 3 4 4 3 3 3 4 3 3 4 3 3 4 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 4 3 4 3 3 3 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 4 4 4 3 4 3 3 4 3 4 3 3 4 3 4 3 3 4 3 4 4 3 4 4 3 3 3 4 4 3 3 3 3 3 3 3 4 4 3 4 4 4 3 4 3 3 4 4 3 3 4 4 3 3 4 3 3 3 4 4 4 3 4 4 3 4 4 3 3 3 4 4 3 4 4 3 4 3 3 4 3 4 3 4 4 3 3 4 3 4 3 4 4 3 4 4 3 4 3 4 3 3 4 4 3 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 4 4 3 4 3 3 4 3 4 3 3 4 3 4 4 3 4 4 3 3 3 3 4 3 3 3 4 4 3 3 4 4 3 4 3 3 3 4 4 3 3 4 4 4 3 3 4 3 4 3 4 3 3 3 3 4 4 4 3 4 4 3 4 4 3 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 4 4 4 3 4 4 3 4 3 4 3 3 4 3 4 4 3 3 3 4 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 4 3 3 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 4 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 4 3 3 3 4 3 4 3 3 3 3 3 4 3 4 4 3 4 3 4 4 3 3 4 3 4 4 3 4 3 4 4 3 3 4 3 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 3 3 4 3 4 4 3 4 3 4 3 4 4 3 4 3 3 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 4 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 3 4 3 3 3 4 3 4 4 3 4 4 3 3 3 4 3 3 4 3 4 4 3 4 4 3 4 4 3 3 4 4 3 4 3 3 4 3 3 4 3 3 4 4 3 3 3 3 3 4 4 3 3 3 3 4 3 3 3 3 3 4 4 3 4 3 4 3 4 3 4 4 3 4 4 4 4 3 3 4 3 4 4 3 4 4 4 3 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 4 3 4 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 4 3 3 3 4 3 4 4 3 4 4 3 3 4 3 3 3 3 3 3 4 4 3 3 4 3 3 3 4 4 4 4 3 4 4 3 3 4 3 4 3 4 3 3 3 4 3 4 4 3 3 4 3 4 3 3 3 4 4 3 3 4 4 4 4 4 4 3 4 3 3 4 4 4 4 4 3 3 4 3 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 4 3 3 3 3 4 4 3 3 3 3 4 4 3 4 3 3 4 3 3 4 4 3 4 3 4 3 3 3 3 3 4 3 4 4 3 4 3 3 3 4 4 3 3 3 4 4 3 3 4 3 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 4 4 3 4 3 3 4 3 3 3 3 4 4 3 4 3 3 4 3 3 3 3 4 3 3 4 4 3 4 3 3 4 3 4 4 3 3 3 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 4 4 3 4 4 3 4 4 4 4 3 3 4 4 4 4 3 4 3 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 4 4 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 4 4 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 4 4 3 4 3 4 3 3 3 3 3 4 3 4 3 4 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 4 3 4 3 3 3 4 3 3 4 3 3 3 4 3 4 4 4 4 4 4 3 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 4 3 4 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 4 3 4 3 3 3 4 3 3 4 3 3 3 4 4 3 4 3 4 4 3 4 4 4 4 3 3 4 3 3 4 3 3 3 4 4 3 4 3 3 3 4 3 3 3 4 3 4 4 4 4 4 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 4 3 3 3 3 4 3 4 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 4 3 3 3 4 3 3 4 3 4 3 4 3 3 4 3 3 3 3 3 4 3 4 3 3 4 4 3 4 3 4 4 4 4 4 3 4 3 3 4 3 4 4 3 3 3 4 3 4 4 3 4 4 4 4 3 3 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 4 4 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 4 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 4 4 3 4 3 3 4 4 3 4 4 3 4 3 4 4 3 3 3 4 3 4 3 3 4 3 3 4 4 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 4 3 4 4 4 3 3 4 3 3 3 4 4 4 4 4 3 4 3 4 4 3 4 4 3 3 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 4 4 3 3 4 4 3 3 3 3 4 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 4 4 4 3 4 3 4 3 3 3 4 3 3 4 3 4 3 4 4 4 4 3 4 4 3 3 4 3 4 4 3 4 4 3 4 4 4 4 3 3 3 4 4 4 4 4 3 4 3 3 4 4 4 4 3 4 3 4 4 3 4 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 4 3 4 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 4 3 4 4 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 3 3 4 4 3 3 4 3 4 4 4 3 4 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 4 3 3 4 3 4 3 3 3 4 4 3 4 3 3 4 4 4 4 3 3 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 4 3 4 3 4 4 4 3 3 4 3 3 4 4 3 4 4 4 4 3 4 3 3 4 3 3 3 3 4 3 3 3 4 3 3 3 4 4 4 3 3 3 4 4 4 3 4 4 3 4 3 3 4 4 4 3 3 4 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 3 4 3 3 4 3 4 4 4 3 4 3 4 4 3 4 3 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 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 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 4 3 4 4 4 3 4 3 3 4 3 4 3 3 4 3 4 3 4 4 3 3 4 3 4 3 3 4 3 3 3 4 4 4 3 3 4 4 3 4 4 3 4 3 4 3 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 4 4 3 3 3 4 3 4 3 3 4 3 3 4 4 3 4 3 3 4 3 4 3 4 4 3 3 4 3 3 4 3 3 4 4 3 3 4 4 3 4 3 4 4 3 3 4 4 3 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 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 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 4 4 3 4 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 4 3 3 4 3 3 4 3 4 3 4 4 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 4 4 3 4 3 3 4 4 4 3 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 3 4 4 4 3 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 3 3 4 4 4 4 3 4 4 4 4 4 3 3 4 4 4 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 3 4 3 4 3 4 3 4 3 4 4 3 4 3 3 4 3 4 3 4 3 3 3 4 4 3 3 3 4 4 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 4 4 3 3 4 4 3 4 3 3 4 4 4 3 4 4 3 4 4 4 3 4 4 4 4 3 3 4 4 4 4 4 4 4 4 3 4 4 3 3 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 4 4 3 4 3 4 4 4 3 4 3 3 4 3 4 3 4 3 3 3 4 3 3 3 4 4 4 3 4 3 4 3 4 3 3 4 3 3 3 3 4 3 4 3 4 4 4 4 3 4 3 3 4 3 4 4 4 3 4 4 3 4 3 4 3 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 4 4 3 4 4 3 3 3 4 3 3 4 3 3 4 4 3 3 4 4 3 4 3 3 3 3 4 4 3 3 3 3 3 3 3 4 3 4 4 3 4 3 4 4 3 4 4 3 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 3 4 3 3 4 4 4 4 3 4 4 4 4 3 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 4 3 3 4 3 3 3 3 4 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 4 3 4 3 3 4 4 3 3 3 4 3 3 4 3 4 4 3 4 4 3 3 3 4 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 4 4 3 3 3 3 4 3 3 3 3 4 4 3 3 4 3 4 3 3 4 3 3 3 4 3 4 3 3 4 4 3 4 4 3 4 3 4 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 4 4 4 3 3 4 3 4 4 3 3 4 4 4 4 3 3 4 3 4 3 3 4 4 3 4 4 4 4 3 4 3 4 3 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 4 3 4 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 4 4 3 3 4 4 3 4 3 4 4 3 4 3 4 3 4 3 3 4 4 3 3 4 3 4 4 3 4 3 4 4 3 4 4 4 3 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 4 4 3 3 4 3 4 4 3 4 3 4 3 4 4 4 3 4 3 3 4 3 3 4 4 3 4 3 4 3 3 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 3 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 4 4 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 4 4 3 4 3 4 3 3 4 3 3 4 4 3 4 3 3 3 4 3 3 3 3 4 3 4 3 3 3 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 3 3 3 4 4 4 4 4 4 4 3 3 3 4 3 4 3 4 3 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 4 4 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 3 3 4 3 4 4 4 4 3 4 4 3 4 3 3 4 3 4 3 3 3 4 3 4 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 4 3 3 3 3 4 3 4 4 4 4 3 3 4 3 4 3 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 4 3 4 3 3 3 3 3 4 4 4 3 3 4 3 4 4 3 4 3 3 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 3 4 4 4 4 3 3 4 4 4 4 3 3 4 3 4 3 3 4 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 4 4 3 3 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 3 3 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 4 3 3 3 4 3 3 4 3 3 4 3 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 3 3 3 3 3 3 3 4 4 3 4 3 4 4 4 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 4 3 4 4 4 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 4 3 4 3 3 3 3 4 4 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 3 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 3 3 3 3 3 4 3 4 4 3 3 3 4 3 4 4 3 3 4 4 4 3 4 4 4 3 4 3 4 3 3 4 3 3 4 4 3 3 4 3 3 4 3 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 3 3 4 4 3 3 3 3 4 4 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 3 3 4 3 3 3 3 4 3 4 3 4 4 3 3 4 3 3 3 3 4 4 4 4 4 3 4 4 3 4 3 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 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 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 4 3 4 3 3 3 4 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 4 3 4 3 3 4 4 3 3 3 3 4 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 4 4 3 4 4 3 4 3 3 3 4 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 3 3 4 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 3 3 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 3 3 4 3 4 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 3 3 4 3 3 3 4 3 4 4 3 4 3 3 4 3 4 3 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 3 3 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 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 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 4 3 4 3 4 3 4 4 4 4 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 4 4 3 3 3 4 4 3 4 4 3 4 4 3 4 3 3 3 3 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 3 4 4 4 3 4 4 3 4 3 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 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 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 4 3 3 4 3 3 4 4 3 3 4 3 3 4 3 3 3 4 3 4 3 4 4 3 4 3 3 3 4 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 4 3 4 4 3 4 3 4 4 4 4 4 4 3 3 3 3 4 3 4 3 4 4 4 3 4 4 3 4 4 4 4 4 3 4 3 4 3 3 4 4 4 3 3 4 3 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 3 4 3 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 4 4 3 3 3 4 3 4 3 3 3 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 4 3 4 4 3 4 4 3 3 3 3 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 4 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 4 3 4 3 3 4 4 4 3 3 3 4 3 4 4 3 4 3 4 3 4 4 4 4 4 3 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 3 4 4 3 4 4 4 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 3 4 4 3 4 4 3 4 3 4 4 4 4 4 4 3 4 3 4 3 3 4 3 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 3 4 3 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 4 3 3 3 4 4 3 4 3 3 4 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 4 3 4 4 3 4 3 4 3 4 3 3 4 4 3 4 3 3 3 3 4 4 3 3 4 4 3 4 4 4 3 4 4 3 4 3 4 4 3 3 3 4 4 3 4 3 4 4 3 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 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 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 4 3 3 4 3 4 3 3 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 3 4 3 4 4 4 3 4 3 3 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 4 4 3 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 4 4 3 4 3 3 4 3 4 4 3 3 3 3 4 3 3 3 3 4 3 4 4 3 3 3 3 4 3 3 3 3 4 4 3 4 3 3 4 3 4 3 3 4 4 3 3 3 4 3 4 4 3 4 3 3 4 4 4 4 3 4 3 4 4 4 3 4 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 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 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 4 4 3 3 3 3 4 3 4 3 3 4 3 4 3 3 3 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 3 3 3 3 4 4 3 4 3 4 4 3 3 4 4 3 4 3 4 3 3 3 3 4 4 3 4 4 4 4 3 3 3 3 4 3 3 4 3 4 4 3 3 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 3 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 4 4 3 3 3 3 4 3 3 4 4 3 4 4 4 4 4 4 3 3 3 4 4 3 4 3 4 4 3 3 4 4 3 4 4 4 3 4 3 3 3 4 3 3 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 4 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 4 4 3 3 4 3 3 4 3 4 4 3 3 4 3 4 4 3 4 3 3 3 4 3 4 4 4 3 3 4 4 3 4 3 3 4 3 4 4 3 4 3 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 3 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 3 3 4 4 4 4 4 4 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 3 3 3 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 3 4 3 3 3 3 4 3 4 4 3 4 3 3 3 4 4 3 4 4 4 4 3 3 4 3 4 4 3 4 3 3 4 3 3 3 3 4 3 4 3 4 4 3 4 4 3 4 3 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 4 3 4 4 4 3 4 3 4 3 4 4 3 4 4 3 3 3 4 4 3 4 3 4 4 3 3 4 4 4 3 4 3 4 4 4 3 4 4 3 4 3 4 4 4 4 3 4 3 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 4 4 3 4 4 4 4 3 3 4 3 3 3 4 4 4 3 3 3 3 4 4 3 4 3 4 4 3 4 4 4 3 4 3 3 4 4 3 4 4 4 3 4 3 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 3 4 3 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 3 3 3 4 4 3 4 4 3 4 3 3 4 3 4 4 4 3 3 3 4 3 4 3 4 3 3 4 4 4 3 4 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 3 4 3 4 4 4 3 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 4 4 3 4 4 3 4 4 3 4 3 4 3 4 4 3 4 3 4 4 3 3 4 3 4 4 3 4 3 3 4 4 4 3 3 3 4 3 4 3 4 3 4 3 4 4 3 3 4 3 4 4 3 4 4 4 4 4 4 4 3 3 4 3 4 3 4 4 3 4 3 4 4 4 4 3 3 4 4 4 4 3 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 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 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 4 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 4 3 4 3 4 4 3 3 4 3 3 3 4 3 4 3 3 4 4 4 4 4 4 3 4 4 3 4 3 3 4 3 4 4 4 3 3 3 4 3 4 4 3 4 4 3 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 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 3 3 3 3 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 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 3 4 3 3 4 4 4 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 4 4 4 4 3 3 4 3 3 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 4 3 4 3 4 3 3 4 4 3 4 4 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 3 3 3 4 3 4 4 3 3 4 4 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 4 4 4 4 3 3 4 3 3 4 3 4 4 4 4 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 4 4 3 4 3 3 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 3 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 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 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 2 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 4 3 4 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 4 4 3 4 3 4 4 3 4 3 4 3 4 4 3 4 3 3 4 4 4 4 3 4 3 3 4 4 4 4 4 3 4 4 4 4 4 4 3 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 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 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 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 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 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 4 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 3 4 4 3 4 3 3 4 4 3 4 3 4 3 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 3 3 4 3 3 4 4 3 4 3 4 4 3 4 3 3 4 4 3 3 4 3 4 4 3 4 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 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 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 4 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 4 3 4 4 3 3 3 4 3 3 4 4 3 4 4 4 3 3 3 4 4 4 3 4 3 3 3 3 4 4 3 4 3 3 4 3 4 4 3 3 4 3 4 4 3 4 4 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 4 4 4 3 4 3 3 4 3 4 4 3 3 3 4 3 3 4 4 4 4 4 4 4 3 4 4 4 4 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 4 3 4 3 3 3 4 4 3 4 3 3 3 4 3 4 3 3 4 3 4 4 3 3 4 4 3 3 4 4 4 3 4 4 3 4 3 3 4 4 3 4 4 3 4 3 3 4 4 3 4 3 3 4 3 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 3 3 4 3 4 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 4 3 4 3 4 3 4 4 3 4 3 3 3 4 3 4 3 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 3 4 4 3 4 4 3 3 4 3 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 3 5 3 4 4 4 4 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 4 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 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 3 3 3 4 4 3 3 3 4 3 3 4 3 4 4 4 3 3 4 3 3 4 3 3 4 4 3 4 3 3 4 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 3 3 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 3 4 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 4 4 3 4 3 4 3 3 3 4 3 4 4 3 3 4 3 4 4 4 4 3 3 4 3 3 4 4 4 4 3 4 4 3 3 3 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 4 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 4 4 3 3 3 4 3 3 3 4 4 3 4 3 3 4 4 3 4 3 3 4 3 3 4 3 4 3 4 4 3 3 3 4 3 4 3 3 4 3 4 3 4 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 3 4 4 3 4 3 3 4 4 4 4 3 4 3 4 4 3 4 4 4 4 3 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 4 3 3 3 4 3 4 3 3 3 4 3 3 4 3 3 4 3 4 3 4 3 4 3 3 3 4 3 4 3 3 4 3 4 4 3 3 3 4 3 4 4 3 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 4 4 3 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 3 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 4 3 3 4 3 4 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 3 4 3 4 3 3 4 4 3 4 4 3 4 3 4 4 3 3 4 3 4 3 3 3 4 3 3 4 3 4 4 3 3 4 4 3 4 3 4 4 4 3 3 3 4 3 4 4 3 4 4 4 3 3 4 3 4 4 4 4 3 4 4 3 3 4 3 4 4 3 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 2 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 4 4 3 3 4 3 4 4 3 4 3 3 4 4 3 4 3 3 4 3 4 3 4 3 4 3 4 3 4 3 4 3 3 4 3 4 4 4 4 3 4 4 4 3 4 4 3 4 4 3 4 3 3 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 3 3 4 4 4 3 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 2 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 4 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 4 3 3 4 3 4 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 4 3 3 4 3 3 3 4 3 4 3 3 3 4 3 3 4 3 3 3 3 3 4 3 4 4 4 4 4 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 4 4 3 4 4 4 3 4 3 4 4 4 4 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 3 4 4 4 3 4 4 3 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 4 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 4 3 4 4 3 3 3 4 3 4 4 3 4 3 3 3 4 3 4 3 3 4 3 4 4 3 4 3 3 3 3 4 4 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 3 4 3 4 4 3 4 4 4 4 4 3 4 3 3 4 4 4 4 3 3 4 3 4 3 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 4 3 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 4 4 3 3 3 4 3 3 3 4 3 4 3 4 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 4 4 3 3 4 4 3 3 4 4 3 4 3 4 3 4 4 4 4 3 4 4 3 4 3 4 3 3 3 4 3 4 3 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 3 3 4 3 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 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 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 4 3 4 3 4 3 3 3 4 3 3 3 3 3 3 4 4 4 4 3 3 4 3 4 4 3 4 3 4 4 3 3 3 4 3 3 4 3 4 3 4 3 3 4 4 4 4 4 3 3 4 4 4 3 4 3 4 3 4 3 3 4 3 4 4 3 3 4 4 3 4 4 4 3 4 4 4 4 3 4 4 3 3 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 4 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 4 3 4 3 3 3 4 3 4 3 3 4 4 3 3 4 3 3 3 3 4 4 4 4 4 3 3 4 3 3 3 4 3 4 3 3 4 4 3 4 4 3 4 3 3 4 4 4 3 4 3 3 3 4 3 4 3 4 3 3 3 4 3 4 3 4 3 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 3 3 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 4 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 4 3 3 4 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 4 3 4 4 3 4 3 3 3 3 3 4 3 4 3 3 4 4 3 4 4 3 4 3 4 4 4 3 3 3 3 3 4 3 4 3 4 4 4 4 4 4 3 4 3 3 4 3 4 4 3 3 3 4 3 4 3 4 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 3 3 4 4 4 4 4 3 4 3 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 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 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 4 4 4 3 4 4 4 3 3 3 3 3 3 3 3 3 3 4 4 3 4 4 4 3 4 4 4 3 3 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 4 3 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 4 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 4 3 4 3 3 4 3 3 4 3 4 3 3 4 4 3 3 4 3 3 3 3 4 3 3 3 4 3 3 3 4 4 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 4 3 4 4 4 3 3 4 3 4 4 3 4 4 4 4 3 4 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 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 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 4 3 4 4 3 4 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 3 4 4 3 4 4 4 4 3 4 4 3 3 4 3 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 4 3 3 3 4 3 4 3 4 3 3 3 4 4 4 4 3 4 4 3 3 4 4 4 3 3 4 3 4 4 3 4 4 3 3 4 3 4 4 4 4 4 3 4 3 3 4 4 4 4 3 4 3 4 4 4 3 4 3 4 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 3 4 4 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 4 4 3 3 3 4 3 3 3 4 3 3 3 4 3 3 4 4 3 4 4 3 3 3 4 4 4 3 3 4 4 3 4 3 4 4 4 3 4 4 3 4 3 3 4 3 3 4 4 4 4 3 4 3 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 3 3 4 3 3 3 3 4 4 3 4 3 3 4 4 3 3 4 4 4 3 4 4 3 4 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 4 4 3 4 3 3 4 3 4 4 3 4 3 3 3 3 3 4 3 3 4 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 3 4 4 3 4 3 4 4 4 3 4 4 4 4 3 3 4 4 4 4 4 4 4 4 3 4 3 3 4 4 4 4 3 4 4 4 4 3 4 3 4 4 4 3 4 4 4 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 4 3 4 3 4 3 4 3 4 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 4 3 3 4 4 3 4 3 4 3 3 3 4 3 3 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 4 4 3 4 4 4 3 3 4 3 3 4 4 4 3 3 4 4 3 3 4 4 4 3 4 3 4 4 4 4 4 3 3 4 3 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 4 3 3 3 3 3 2 4 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 4 3 3 4 3 3 3 3 3 3 4 3 3 4 4 3 4 3 3 4 3 4 3 3 3 4 4 4 3 4 4 4 3 4 4 3 4 4 3 4 4 3 4 4 4 3 4 3 4 4 4 3 4 3 3 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 4 4 3 4 4 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 3 3 4 3 4 3 4 3 4 4 4 3 3 3 4 4 4 3 3 4 3 3 4 3 3 4 3 3 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 3 4 4 4 4 3 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 4 3 4 3 4 3 3 3 3 3 4 3 4 3 4 3 3 4 3 4 3 3 4 4 3 3 4 3 3 4 4 4 3 4 3 4 3 3 3 4 4 4 3 3 4 3 3 4 4 3 4 3 4 4 4 3 4 3 3 4 3 4 4 4 4 4 3 3 3 4 3 3 4 4 3 4 4 3 3 3 3 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 3 4 4 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 4 3 4 3 4 4 4 3 4 4 4 3 4 4 4 4 4 4 3 4 4 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 4 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 4 4 4 3 3 3 4 3 3 3 4 4 4 4 4 4 3 4 3 3 4 4 4 4 3 4 4 4 4 3 4 3 3 3 4 3 3 4 3 4 3 3 4 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 3 4 3 3 4 4 4 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 4 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 3 4 3 4 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 4 3 3 4 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 4 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 4 3 4 4 3 3 4 4 4 3 3 4 4 4 3 4 3 3 4 3 4 3 4 3 4 3 3 4 4 4 4 4 3 4 3 3 3 3 4 3 4 4 4 4 4 4 4 3 4 3 4 4 4 3 4 3 4 3 3 4 4 3 4 4 4 4 4 4 4 3 4 3 4 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 4 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 4 4 3 3 3 4 4 3 3 4 3 3 4 3 4 3 3 4 3 4 4 3 3 4 4 3 3 4 3 4 4 3 4 4 3 4 4 4 3 4 3 4 4 4 4 4 4 4 3 4 3 4 4 3 3 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 3 3 4 4 4 4 3 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 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 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 4 3 4 3 3 3 3 4 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 4 3 4 4 3 4 4 3 4 3 4 4 3 3 4 3 4 4 3 4 4 3 4 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 4 3 3 4 3 3 4 4 4 4 3 4 3 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 3 4 4 4 3 3 4 3 3 4 4 3 4 4 3 3 3 4 4 4 4 4 4 3 3 3 3 4 4 3 4 3 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 3 4 4 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 3 3 3 3 4 4 4 3 3 3 3 4 3 4 4 3 4 3 4 3 4 4 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 4 3 4 3 3 4 3 3 4 4 4 3 4 4 3 3 4 4 3 4 3 4 4 4 3 3 4 3 3 4 3 4 3 4 4 4 4 4 4 3 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 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 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 4 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 4 4 3 3 3 4 3 4 4 3 4 3 4 4 3 3 4 3 4 3 4 4 3 3 4 4 3 4 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 4 3 4 3 4 4 3 4 4 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 4 4 4 3 4 4 3 4 4 4 4 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 4 4 3 4 3 3 3 4 4 3 4 4 3 4 3 4 4 3 3 4 3 4 4 4 4 3 3 4 3 3 3 3 4 3 4 4 4 4 3 4 3 4 3 4 3 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 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 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 4 3 4 3 4 3 3 3 3 3 3 4 3 4 4 3 4 3 3 3 3 3 4 4 3 3 4 4 3 4 4 3 3 3 3 4 3 4 3 4 3 4 3 3 4 4 4 4 3 3 3 3 3 3 3 4 3 3 4 4 3 4 3 3 4 4 4 4 4 4 3 3 4 4 3 4 4 4 3 4 3 3 4 4 3 3 4 3 3 3 4 4 3 4 3 3 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 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 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 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 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 3 3 4 4 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 3 4 3 4 3 4 3 3 3 4 3 3 4 4 3 4 4 3 4 3 4 4 3 3 3 4 3 4 4 3 4 3 3 4 4 3 4 3 3 4 4 3 3 4 3 4 3 4 4 3 3 4 3 4 3 4 4 3 4 4 3 4 4 4 4 3 3 4 3 4 3 4 3 3 4 3 4 4 4 3 3 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 4 3 3 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 3 4 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 4 4 4 4 3 3 4 3 4 3 3 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 3 3 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 4 3 3 3 3 3 3 3 3 4 4 3 3 3 4 4 3 3 4 3 3 3 4 3 4 3 4 3 4 3 3 4 4 4 4 3 3 4 4 4 4 4 3 4 4 3 4 3 3 4 4 3 4 3 3 4 3 4 3 4 4 4 4 4 3 4 4 4 3 4 4 3 4 3 4 4 3 4 3 3 4 4 4 4 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 4 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 4 3 3 4 3 3 3 3 4 3 4 3 3 4 3 4 3 3 4 4 3 4 3 3 4 3 4 4 3 4 3 4 4 4 4 3 3 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 4 3 4 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 4 4 3 3 4 3 4 3 3 3 4 3 4 3 3 4 4 3 4 4 3 4 3 3 4 3 3 4 4 3 4 4 4 4 3 3 4 4 3 3 3 3 4 3 4 3 4 4 3 4 3 3 3 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 3 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 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 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 4 3 3 3 4 3 3 3 3 3 4 3 4 3 4 3 3 4 3 3 3 4 3 4 3 4 3 3 4 4 3 4 4 4 4 4 3 3 4 4 4 3 3 4 4 3 4 3 4 4 4 4 3 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 4 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 2 4 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 4 3 4 4 3 3 4 3 4 3 4 4 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 4 3 4 3 3 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 3 3 3 3 3 4 4 4 4 3 3 4 3 4 4 3 4 4 3 4 3 3 3 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 4 4 3 3 3 4 3 4 4 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 3 4 4 3 4 3 4 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 4 3 4 3 3 3 3 3 3 4 4 4 3 3 4 4 4 4 4 3 4 3 3 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 3 4 4 4 4 3 3 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 3 4 3 4 4 4 4 3 3 4 3 3 3 4 4 3 3 3 4 3 4 4 4 4 4 3 3 4 4 3 4 3 3 3 3 4 4 3 4 3 4 4 3 4 3 4 3 3 4 3 4 4 3 3 3 3 4 3 4 4 3 4 4 3 3 4 4 4 4 3 4 4 3 4 4 3 3 4 3 4 3 3 4 3 4 3 3 4 4 4 3 3 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 4 3 3 4 3 3 4 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 4 4 3 4 3 4 4 3 4 3 3 4 4 3 4 3 3 4 4 3 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 4 3 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 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 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 4 3 3 4 4 3 4 3 4 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 4 4 3 3 3 4 4 3 4 4 3 4 4 3 4 4 3 3 4 3 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 4 4 3 4 4 3 4 3 3 4 4 3 4 4 4 3 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 3 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 4 4 3 3 3 4 3 3 4 3 4 3 3 4 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 4 3 4 4 3 4 3 3 3 4 3 3 3 4 4 3 4 3 3 4 4 4 3 3 4 3 4 3 4 3 4 3 4 3 4 3 3 3 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 3 3 4 4 4 4 3 3 4 4 4 3 3 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 2 4 3 3 3 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 3 3 3 3 3 4 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 4 3 4 4 4 3 3 4 4 3 3 3 4 3 4 3 3 4 4 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 4 4 4 3 4 3 4 3 3 4 4 4 4 3 3 4 4 4 4 4 4 3 4 3 3 3 4 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 3 4 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 2 4 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 3 3 4 3 4 3 3 4 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 3 4 3 4 4 3 3 4 4 3 4 3 4 4 3 4 4 3 4 3 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 3 3 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 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 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 4 4 3 3 4 3 4 3 3 3 3 3 3 3 3 4 4 4 4 3 3 3 4 3 3 3 4 3 4 3 3 4 4 3 3 3 4 4 3 3 4 3 4 4 3 3 3 3 3 4 3 4 4 4 4 4 3 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 4 4 3 3 4 3 4 3 3 4 4 3 3 3 3 3 3 4 3 4 3 4 3 3 3 4 3 4 4 3 4 4 3 3 3 3 3 3 3 4 3 4 4 3 3 4 3 3 3 3 4 3 4 4 3 3 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 3 3 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 3 4 4 3 4 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 4 3 3 4 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 4 4 3 4 3 3 3 3 3 3 4 3 3 3 4 3 4 4 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 4 4 3 3 3 3 3 3 4 3 4 4 3 3 4 3 3 3 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 4 3 3 4 4 3 3 3 4 3 4 3 4 3 4 3 4 4 4 4 3 4 4 3 4 3 3 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 4 4 4 4 3 3 4 4 4 4 3 4 3 4 4 3 4 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 3 4 3 3 3 4 4 4 4 3 3 4 3 3 4 3 3 4 3 4 3 4 3 3 4 3 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 4 4 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 4 3 4 3 4 3 4 4 4 4 4 4 3 4 3 4 3 4 4 4 3 3 4 3 3 4 3 3 3 4 3 4 4 4 3 4 3 4 4 3 4 3 3 3 3 4 3 4 4 4 4 3 4 4 4 4 3 4 4 3 4 3 4 3 4 4 4 4 3 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 3 3 4 3 4 4 4 4 4 3 4 3 4 4 3 4 3 4 4 3 4 3 4 4 3 3 4 3 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 4 3 4 3 3 4 3 4 3 3 4 3 4 3 3 3 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 3 4 4 4 4 4 4 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 4 3 3 3 3 3 3 4 3 4 3 3 3 4 4 4 3 3 4 3 3 3 3 4 3 4 3 4 3 3 4 3 3 4 3 4 4 3 3 4 4 3 3 4 4 4 3 4 4 3 4 3 3 4 4 4 3 3 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 3 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 3 3 4 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 4 3 4 4 3 3 4 3 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 4 3 4 4 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 4 3 4 4 3 4 3 4 3 4 4 3 3 3 4 4 3 4 3 4 4 4 3 4 4 3 4 4 4 3 3 4 4 4 3 4 4 4 3 4 4 4 3 3 4 4 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 4 4 4 3 3 3 4 4 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 3 4 4 3 4 3 4 4 3 3 3 3 4 4 3 4 4 4 4 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 3 3 4 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 4 4 3 4 3 3 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 3 4 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 4 4 4 3 3 4 4 3 4 3 3 3 4 4 3 3 4 3 3 3 3 3 3 3 3 4 4 3 3 3 4 4 4 4 4 3 4 4 4 3 4 4 3 4 4 3 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 3 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 3 3 4 4 4 4 3 3 4 4 4 4 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 4 3 3 4 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 3 3 4 3 4 3 4 4 4 3 3 4 4 3 4 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 4 3 4 4 4 4 3 3 3 3 3 4 3 4 4 3 4 3 3 3 4 4 3 4 3 4 4 4 3 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 3 4 4 4 4 3 3 4 4 4 4 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 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 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 4 4 3 3 4 3 3 3 3 4 3 3 4 3 4 3 4 4 4 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 3 3 4 3 3 3 4 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 4 4 3 4 4 4 4 3 4 3 3 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 3 4 3 3 4 4 4 3 4 3 4 4 3 3 3 3 4 3 3 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 3 4 3 4 3 3 3 3 3 4 3 4 4 4 3 4 3 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 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 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 4 4 4 3 4 3 3 4 3 3 3 3 3 4 4 3 4 3 3 3 4 3 3 3 4 3 3 3 4 4 4 4 3 4 3 4 4 3 3 3 4 3 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 3 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 3 4 4 4 3 4 3 4 4 3 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 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 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 4 4 3 3 3 4 3 4 4 3 3 4 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 4 4 4 3 4 3 3 4 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 3 4 4 4 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 4 3 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 4 4 3 4 4 4 3 3 3 4 3 4 3 3 3 3 3 3 4 4 3 4 3 3 4 3 3 4 3 4 4 4 4 3 3 4 4 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 4 4 4 4 4 3 3 4 3 4 4 3 4 4 4 4 4 3 3 4 4 4 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 4 4 3 3 3 4 3 3 3 4 4 4 3 3 3 3 4 4 3 3 4 4 3 3 3 3 4 3 3 3 3 3 4 4 3 3 3 4 4 3 3 3 3 4 4 4 4 4 3 3 4 3 4 4 3 3 4 3 4 4 4 4 4 4 4 4 3 3 4 4 4 3 3 4 4 4 4 4 4 4 3 3 3 3 3 4 4 4 4 4 4 3 3 3 4 4 4 3 4 3 4 3 4 4 4 3 4 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 4 3 4 3 4 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 3 4 3 4 3 3 3 4 3 4 3 3 3 3 4 4 3 4 4 3 3 4 4 4 3 4 3 3 3 4 3 3 4 4 3 4 4 4 3 3 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 3 3 4 4 4 3 4 3 4 4 3 4 4 3 4 4 4 3 4 4 3 4 3 4 4 3 4 3 4 3 4 4 3 4 4 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 4 4 3 3 4 4 3 4 4 4 4 4 4 3 3 3 4 3 4 3 3 3 3 3 4 4 4 4 3 3 4 4 3 3 4 3 3 4 4 4 3 4 3 4 3 3 4 4 4 4 3 3 3 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 3 3 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 3 4 4 4 4 3 4 3 4 4 3 4 4 4 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 4 3 3 3 4 3 3 4 3 3 4 3 4 4 3 3 4 4 3 4 4 4 4 4 3 4 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 3 4 4 4 4 3 4 4 4 3 3 3 4 4 3 4 4 4 4 3 3 3 4 3 3 4 4 3 3 3 4 4 3 4 4 4 3 4 3 4 4 4 4 4 4 4 4 3 4 4 4 3 4 3 4 4 4 3 4 3 4 4 3 4 4 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 4 4 4 3 3 3 3 3 4 3 3 4 3 4 4 3 3 4 3 3 4 4 3 4 3 4 3 3 4 3 4 3 3 3 4 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 4 3 3 4 4 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 3 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 4 3 3 4 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 4 3 4 4 3 4 3 4 3 3 4 4 4 3 3 4 3 3 3 4 3 4 3 3 4 3 4 4 4 4 3 4 4 3 3 4 4 3 4 4 4 4 3 3 4 4 4 4 4 4 4 3 3 4 3 4 4 4 4 4 4 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 4 3 3 3 4 4 3 4 3 3 3 3 3 3 4 3 4 4 4 3 3 4 3 3 3 3 4 3 3 3 4 4 3 4 3 3 4 4 4 3 3 4 4 3 4 3 4 3 4 4 3 4 3 3 4 4 4 3 3 3 4 4 3 4 3 4 3 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 3 3 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 3 4 4 4 4 4 3 3 4 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 4 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 4 4 4 3 3 3 4 4 4 4 3 3 3 4 3 4 4 3 4 4 3 3 4 3 4 4 3 4 4 3 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 4 4 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 3 4 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 4 3 4 4 3 4 3 3 4 4 3 4 3 3 4 3 4 4 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 3 3 3 4 3 4 3 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 4 3 4 3 3 3 3 4 4 3 4 4 4 4 4 4 3 3 3 3 4 3 4 3 4 3 4 4 4 3 4 4 4 3 3 3 3 4 3 4 3 4 4 3 4 3 4 4 3 3 3 3 3 3 4 4 4 4 3 3 3 4 4 3 4 4 4 4 3 3 3 3 4 3 4 3 4 4 3 4 3 3 3 4 3 4 3 4 3 3 4 4 3 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 4 3 3 3 3 4 3 3 4 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 4 4 4 3 3 3 4 4 4 4 3 4 4 4 3 4 3 4 3 3 4 3 4 3 4 4 4 3 4 3 3 3 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 3 4 4 3 4 4 3 4 3 4 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 4 4 3 4 4 3 4 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 3 4 4 3 3 4 4 4 3 4 4 3 4 4 4 4 4 3 4 3 4 4 3 4 3 3 3 4 4 3 4 4 3 4 3 3 4 3 3 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 4 3 4 4 4 3 3 3 4 3 3 4 3 4 4 3 4 3 3 3 3 4 4 3 4 3 3 3 3 3 4 4 4 3 3 4 3 4 3 4 4 3 3 4 4 4 3 4 4 3 4 4 3 4 3 4 3 4 4 3 4 3 4 4 4 4 4 3 3 3 3 3 3 3 4 3 4 4 3 4 4 4 3 4 4 4 4 4 4 3 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 4 3 4 3 4 4 3 3 3 4 3 3 4 3 4 4 3 3 4 3 3 4 4 3 4 4 4 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 3 3 3 4 3 3 3 4 4 3 3 4 3 3 3 4 3 4 3 4 4 3 3 4 3 3 4 4 4 3 4 3 4 4 3 3 4 4 3 4 3 4 3 4 3 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 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 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 4 3 4 3 4 3 3 3 4 4 3 3 3 3 3 3 4 3 3 4 3 4 4 4 3 3 3 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 4 3 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 3 4 4 4 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 4 4 3 4 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 4 3 4 4 3 4 3 4 4 3 3 3 4 4 3 4 3 3 3 3 3 4 3 4 3 4 3 4 3 4 4 3 4 3 3 3 4 3 3 4 4 4 4 3 3 4 3 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 4 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 4 3 4 3 4 4 3 4 3 4 4 3 3 3 3 3 3 3 4 3 4 3 4 4 3 3 4 3 4 4 4 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 4 3 4 4 3 4 3 3 4 4 4 4 3 4 3 3 4 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 4 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 4 3 3 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 4 3 4 4 4 4 4 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 3 3 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 4 4 4 4 3 4 3 3 4 3 3 4 3 4 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 3 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 4 4 3 3 3 3 3 4 3 3 3 3 4 3 4 4 3 3 3 3 3 4 3 3 3 4 3 4 4 3 3 3 3 4 3 4 4 3 3 4 4 3 4 4 4 4 4 3 4 3 3 4 4 4 4 3 3 4 4 4 4 4 4 4 3 4 3 3 4 4 4 4 3 4 4 3 4 4 4 3 4 4 4 3 4 3 4 4 4 4 4 4 4 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 3 4 4 3 3 4 3 3 3 3 3 4 4 4 3 4 4 4 4 4 3 3 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 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 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 4 4 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 4 4 4 4 3 4 3 3 4 3 4 4 3 4 3 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 4 3 3 4 4 4 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 4 4 4 4 4 4 3 4 3 4 3 3 4 3 4 4 3 4 3 4 3 3 4 4 4 4 3 4 4 3 4 3 3 3 3 3 4 4 4 4 4 3 3 4 3 3 4 3 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 4 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 4 4 3 3 3 3 3 3 4 4 4 3 3 4 3 3 4 3 4 4 4 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 4 3 4 3 4 3 3 3 3 3 4 3 3 4 3 4 4 3 4 4 4 3 3 4 3 4 4 3 4 4 3 4 4 4 3 4 4 4 3 3 4 3 3 3 3 4 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 3 3 4 4 4 4 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 3 3 4 3 3 3 4 4 3 4 3 3 3 4 3 4 3 3 4 3 4 3 4 3 3 4 3 3 4 4 4 3 3 4 3 4 4 3 3 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 3 4 4 4 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 3 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 3 3 4 4 4 4 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 4 3 4 3 4 4 4 3 3 4 3 4 4 4 4 3 4 4 4 3 4 3 3 4 4 3 4 4 3 4 3 4 4 4 4 4 3 4 3 3 4 4 4 4 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 4 4 4 4 3 3 4 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 4 4 3 3 3 3 4 3 4 4 3 3 4 3 4 4 4 3 4 3 3 3 3 3 4 4 4 3 4 3 4 3 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 4 4 3 4 3 4 4 3 3 4 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 3 4 4 4 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 3 3 4 3 4 4 4 3 3 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 3 4 3 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 3 4 3 4 4 4 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 4 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 4 4 4 3 3 4 3 4 4 4 3 3 4 3 4 3 3 4 3 3 4 4 3 3 4 4 4 4 4 3 4 3 4 3 4 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 4 3 4 4 4 3 4 3 4 3 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 4 4 4 3 4 4 4 4 3 4 3 4 3 4 4 4 4 4 3 4 4 4 3 4 4 4 3 4 3 3 4 3 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 4 3 4 4 3 4 3 4 3 3 3 3 3 4 4 4 4 3 4 3 3 4 4 3 4 4 4 3 4 4 4 4 3 4 4 4 3 4 3 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 4 3 3 4 4 3 4 4 3 4 4 3 4 3 3 4 4 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 4 3 4 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 4 4 4 3 3 3 4 3 4 3 4 4 3 4 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 4 4 4 3 4 3 4 4 3 4 3 4 4 4 3 3 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 4 4 4 3 3 3 4 3 3 4 3 4 4 4 3 3 3 4 3 3 3 4 3 3 3 4 3 4 4 4 4 4 4 4 3 4 3 4 3 3 4 4 3 4 4 4 4 4 4 4 3 4 3 4 3 4 4 4 4 3 3 3 3 4 4 3 3 4 3 4 4 4 4 4 3 4 4 4 3 3 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 4 3 3 3 3 3 3 4 4 3 3 3 4 3 3 3 3 3 3 4 3 3 4 4 3 4 3 3 3 4 3 4 3 3 4 3 4 3 4 3 3 4 4 3 4 3 4 4 3 4 4 4 4 3 3 4 3 4 4 3 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 3 4 3 4 4 4 4 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 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 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 4 4 3 3 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 3 3 4 3 4 4 4 4 4 3 4 4 3 4 3 4 3 4 4 4 4 4 4 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 3 4 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 4 4 4 3 4 3 3 3 3 3 4 3 4 3 4 3 3 3 4 3 4 4 3 4 3 4 3 3 3 3 4 4 4 3 3 4 4 4 4 4 3 4 3 4 4 3 3 4 3 3 4 3 3 4 3 4 3 4 4 4 4 3 4 4 4 4 4 3 3 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 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 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 4 3 3 4 3 3 3 3 4 4 4 3 3 4 3 3 4 4 3 3 3 3 4 3 3 4 3 4 4 3 4 4 3 4 4 4 3 4 3 3 4 4 3 4 4 3 4 4 4 4 3 4 3 4 4 4 4 3 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 4 4 4 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 4 4 3 4 4 3 3 4 3 4 3 4 4 4 3 4 3 3 4 4 4 3 4 4 3 4 3 4 4 4 4 4 3 4 3 3 4 3 4 3 4 4 3 4 3 4 4 3 4 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 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 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 4 3 3 4 3 4 3 4 3 3 4 3 3 3 4 4 3 4 3 4 4 4 4 3 4 3 3 4 3 3 4 4 4 3 4 3 4 3 3 3 3 4 4 4 4 4 4 3 4 4 4 4 3 4 3 3 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 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 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 4 3 3 3 4 3 4 4 3 3 3 3 3 4 3 4 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 4 4 3 4 3 4 4 4 4 4 3 3 4 3 4 4 4 3 4 3 3 4 3 4 3 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 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 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 4 4 3 3 4 3 3 3 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 3 4 3 4 4 4 4 3 3 4 3 4 4 3 4 3 3 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 3 4 4 4 4 4 3 4 3 4 4 3 4 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 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 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 3 4 3 4 4 3 3 3 3 4 4 4 4 3 4 4 4 4 3 4 3 4 3 3 4 4 3 4 3 3 4 3 3 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 3 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 4 4 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 3 4 4 4 3 4 4 3 4 4 3 3 3 4 4 3 4 3 4 3 4 3 3 4 3 4 4 3 3 3 4 3 4 3 4 4 4 3 3 4 4 4 4 3 4 3 3 4 4 3 4 4 4 4 3 3 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 3 3 4 4 4 4 4 3 4 4 4 3 4 4 3 4 3 4 3 4 4 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 4 3 4 3 4 4 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 4 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 4 3 4 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 4 4 4 4 3 4 4 3 4 3 4 4 4 4 3 3 4 4 4 3 4 4 3 4 4 3 4 4 3 4 3 4 3 4 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 4 3 4 3 4 3 4 4 3 3 4 3 4 4 3 4 3 3 4 4 4 3 4 4 3 4 3 3 4 3 3 3 4 3 4 4 4 4 4 3 4 4 3 4 4 3 4 3 3 4 4 4 4 3 4 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 4 3 4 3 3 3 3 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 3 3 4 4 3 4 4 4 4 4 4 3 3 3 4 4 4 4 3 4 3 4 4 4 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 4 4 4 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 3 3 4 4 4 4 4 4 3 4 4 3 4 3 3 4 4 4 4 3 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 4 3 4 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 4 4 4 4 3 4 4 3 4 3 3 4 4 3 4 4 3 4 3 4 4 4 4 3 3 4 4 4 3 3 4 3 4 4 4 4 4 3 4 4 4 3 4 4 4 4 3 3 4 4 4 4 3 4 4 3 4 4 4 3 4 4 3 4 4 4 4 3 4 4 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 4 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 4 4 4 3 4 4 3 3 3 4 4 3 4 4 3 3 4 3 4 3 4 4 4 3 4 3 4 4 4 4 3 3 3 4 3 3 4 4 4 4 4 3 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 3 3 4 3 4 4 3 3 3 4 3 4 4 3 4 4 4 3 3 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 3 4 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 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 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 4 4 3 4 4 3 4 4 3 3 3 4 3 4 4 4 4 4 3 4 3 4 3 3 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 3 3 3 4 4 3 4 3 4 4 3 4 3 4 4 4 3 4 3 4 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 4 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 3 4 4 3 3 4 3 3 4 3 4 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 3 4 4 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 4 3 3 3 4 4 3 3 4 3 3 3 3 3 4 3 3 3 4 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 4 4 4 4 4 3 4 3 4 3 4 4 3 4 4 3 4 3 3 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 4 3 4 4 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 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 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 4 3 4 3 3 4 3 4 3 4 3 3 4 4 4 3 4 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 3 4 4 4 4 4 3 4 3 4 3 3 4 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 4 3 3 4 3 4 3 3 3 4 3 4 3 4 3 4 3 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 3 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 3 4 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 4 3 3 3 4 3 3 4 3 4 3 4 3 3 4 4 3 3 4 4 4 3 3 4 4 3 3 4 3 4 3 4 4 4 4 4 3 3 3 4 4 3 4 4 3 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 3 4 3 4 3 4 3 4 4 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 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 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 4 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 4 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 3 4 3 3 4 4 3 4 3 3 4 4 4 4 3 4 3 4 3 4 4 4 3 3 3 4 3 4 4 4 4 3 4 4 3 4 3 4 4 4 3 4 3 4 3 4 4 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 4 4 3 3 4 3 4 4 3 4 3 4 3 4 4 3 3 4 3 4 4 3 4 3 3 3 4 3 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 3 4 4 4 4 3 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 3 4 3 3 4 4 3 4 4 3 4 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 4 4 3 3 3 3 4 3 4 4 4 4 3 4 3 3 4 4 3 4 4 3 4 3 4 4 3 3 4 3 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 3 3 3 4 3 4 4 4 4 3 3 4 4 4 4 3 4 3 3 4 4 3 4 4 4 4 3 4 4 3 4 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 3 3 3 3 3 4 4 3 3 4 3 4 4 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 4 3 4 4 3 3 4 4 3 4 4 4 4 4 3 4 3 4 3 3 4 4 3 4 3 4 4 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 4 4 3 4 3 3 4 3 4 4 3 4 3 3 4 4 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 3 3 4 4 3 4 3 4 3 3 3 4 3 3 4 3 4 4 3 4 3 4 3 4 4 3 3 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 4 3 4 3 4 3 4 3 3 4 3 4 4 3 4 4 3 3 3 4 3 4 3 4 4 3 4 3 4 4 3 4 3 3 3 3 4 3 4 4 3 4 4 3 3 4 3 4 3 4 3 4 3 4 4 4 4 4 3 4 4 3 4 3 4 3 3 4 4 4 4 3 4 4 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 3 4 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 4 4 3 3 4 3 3 3 3 4 3 3 3 3 4 4 3 4 3 4 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 4 4 3 3 3 3 3 4 4 3 4 3 4 4 3 3 4 4 3 4 3 4 4 4 3 4 3 4 4 3 4 3 4 4 3 4 4 4 4 3 4 4 3 4 3 3 4 3 4 3 4 4 4 3 4 3 3 3 4 4 3 4 3 3 4 3 4 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 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 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 3 3 3 3 4 4 4 3 3 4 3 3 3 3 4 4 3 4 3 3 4 3 4 3 4 3 3 4 4 3 4 3 4 4 3 4 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 3 3 4 3 3 4 4 4 4 3 4 3 3 3 3 3 4 4 4 3 4 4 3 4 3 4 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 4 4 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 4 4 4 4 3 3 4 3 3 3 3 4 4 4 4 3 4 3 3 4 3 4 3 4 4 3 4 4 3 4 3 4 3 3 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 3 4 4 3 4 4 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 4 4 3 4 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 4 3 4 3 3 4 3 3 4 3 4 4 3 3 4 3 4 3 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 3 4 4 4 4 4 3 4 3 4 3 3 3 4 3 3 4 4 3 4 4 3 4 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 4 3 4 3 4 3 4 4 4 3 3 4 3 3 4 4 4 4 4 4 3 3 4 3 4 4 4 3 4 4 3 3 4 4 3 4 3 4 3 3 4 3 4 3 4 3 3 4 4 3 4 3 4 4 3 3 4 3 4 3 4 3 4 4 4 4 4 3 4 4 3 4 3 4 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 4 3 4 3 3 3 4 4 3 3 4 3 3 3 4 4 3 3 4 3 3 3 4 3 4 4 3 3 3 3 4 4 3 4 4 3 4 4 4 4 3 4 3 4 4 3 4 4 4 4 3 3 4 3 4 4 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 4 4 3 4 3 4 4 4 4 4 3 4 4 4 4 4 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 4 3 3 4 3 4 4 3 3 4 4 3 3 4 3 4 4 4 3 4 3 4 3 3 4 3 4 4 3 4 3 3 4 4 3 4 3 4 3 4 3 4 4 4 4 3 4 4 4 3 3 3 4 3 3 4 3 3 4 4 3 3 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 4 3 4 3 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 3 4 3 3 4 4 3 4 3 4 4 4 3 4 3 4 4 4 3 3 4 3 3 3 3 4 3 4 4 3 3 3 4 3 3 4 3 4 4 3 4 3 3 3 4 3 4 3 4 3 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 4 3 3 4 4 3 4 3 4 3 4 3 3 4 3 3 4 4 4 4 3 4 3 3 4 3 4 3 4 3 4 4 3 4 4 3 4 4 3 4 3 3 4 4 4 3 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 4 4 4 4 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 3 4 3 4 3 4 3 4 3 3 3 3 3 4 3 4 3 4 4 4 4 4 4 3 4 4 3 4 3 3 3 3 4 4 4 4 4 4 3 3 4 3 4 4 4 4 3 4 4 4 3 4 3 3 4 3 4 3 4 4 4 3 3 4 4 3 4 4 3 4 3 3 3 4 4 3 3 4 4 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 4 4 3 3 3 3 3 3 3 3 3 4 4 3 3 3 4 3 4 4 4 4 3 4 3 4 4 4 3 4 4 4 3 4 4 3 4 4 3 4 4 3 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 4 3 4 4 4 4 4 3 4 4 3 4 3 4 3 4 4 3 4 4 4 4 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 4 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 3 3 3 3 3 4 3 4 3 3 4 4 3 4 3 3 3 4 4 4 4 3 3 4 4 3 4 3 4 4 3 3 3 3 4 3 4 3 4 3 3 4 3 4 4 4 3 4 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 4 3 4 3 3 4 3 4 4 3 3 4 3 4 3 4 3 3 4 3 4 3 3 4 3 3 3 4 4 3 4 4 3 4 3 3 3 4 4 4 4 3 3 3 4 3 4 3 4 3 4 3 4 3 4 4 4 4 3 3 3 3 4 4 3 3 3 3 3 3 3 4 3 4 4 3 3 3 4 4 4 4 3 3 4 4 4 4 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 4 4 3 3 4 4 4 4 3 3 4 4 3 3 3 4 4 4 3 4 3 3 3 3 4 3 4 3 4 4 4 4 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 3 4 4 4 4 3 4 3 3 4 3 3 4 4 3 4 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 4 4 3 3 4 4 4 4 3 3 4 4 3 3 3 4 3 4 3 4 4 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 4 4 3 4 4 3 4 4 3 4 4 3 4 3 3 4 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 4 4 4 3 4 4 4 3 4 3 3 4 3 4 3 4 3 3 3 4 3 4 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 4 3 3 4 3 4 4 3 4 3 3 4 4 4 4 4 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 3 4 4 3 3 3 4 3 3 3 3 3 3 4 3 4 3 4 3 4 3 4 4 4 4 3 4 3 4 3 3 3 3 4 3 4 4 3 3 3 3 3 3 4 4 3 3 4 3 4 3 3 4 4 4 3 3 4 4 4 4 3 3 4 3 4 4 3 3 4 4 3 4 4 4 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 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 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 4 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 4 3 4 3 3 4 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 4 3 3 4 3 4 3 4 3 3 3 4 3 3 4 3 3 3 4 3 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 4 3 3 4 4 3 4 3 3 3 3 3 3 4 3 4 4 3 3 4 4 4 3 4 3 4 4 4 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 4 3 3 4 4 4 3 3 4 3 4 4 3 4 3 4 3 4 4 4 4 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 4 3 3 3 3 4 3 3 4 3 4 3 4 3 3 4 3 3 4 4 3 3 4 3 4 4 3 3 3 4 4 3 4 3 4 4 4 4 3 4 3 4 4 3 3 4 3 3 4 3 4 3 3 3 3 3 4 4 4 3 3 3 3 4 3 4 3 3 3 4 3 4 3 3 4 4 4 3 4 3 3 4 3 3 4 3 4 4 3 4 4 4 3 4 4 3 4 3 4 4 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 4 4 4 3 4 3 4 3 3 4 4 4 3 4 3 3 4 3 4 4 3 3 4 3 4 4 3 3 3 3 3 4 4 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 4 4 3 3 4 3 4 3 3 4 4 4 3 4 3 3 4 3 3 4 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 4 3 3 3 3 4 4 3 3 3 3 4 3 3 3 3 3 4 3 4 3 4 4 4 3 4 3 4 3 3 3 3 4 3 3 4 3 4 3 3 4 4 3 3 4 4 3 4 3 3 4 3 3 3 3 4 3 3 4 3 4 3 4 4 3 4 4 3 3 3 3 4 3 4 4 3 4 4 4 3 3 4 3 4 3 4 4 3 4 4 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 4 3 4 4 4 3 4 3 3 3 3 4 3 3 3 4 4 3 4 3 3 4 3 4 4 3 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 4 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 4 4 3 4 4 3 3 4 4 3 4 4 3 4 4 3 4 4 3 4 3 3 4 3 4 3 4 4 4 3 3 3 3 4 3 4 4 3 3 4 3 3 4 3 3 4 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 4 4 3 4 3 4 4 3 4 4 3 4 3 3 4 4 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 4 3 4 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 4 3 3 4 3 3 3 4 4 3 4 3 3 4 4 3 4 3 3 4 4 3 3 4 3 3 4 3 4 4 3 3 4 3 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 3 4 3 3 3 3 3 4 3 4 3 3 4 4 4 4 4 3 3 4 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 4 3 3 3 3 3 4 4 3 4 3 4 3 3 3 3 4 4 3 4 3 3 4 3 3 4 4 3 3 4 3 4 4 3 3 4 3 4 3 3 4 3 4 3 4 3 4 3 4 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 4 3 4 4 3 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 3 4 3 4 3 4 4 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 4 3 3 4 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 4 4 3 4 3 3 4 3 3 4 4 3 4 3 4 3 4 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 4 3 3 3 3 4 3 4 3 3 3 4 3 4 4 4 4 3 4 4 3 3 4 4 3 4 3 3 4 4 3 4 4 4 3 4 4 4 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 4 3 3 3 3 4 3 4 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 4 3 3 3 4 3 3 4 3 4 3 3 4 4 4 3 3 3 3 3 4 3 4 3 3 3 4 4 3 4 4 3 4 3 4 4 3 3 4 3 3 4 4 4 3 4 3 3 4 3 3 4 4 3 4 3 3 4 3 4 4 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 4 3 3 4 3 4 3 4 4 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 4 4 4 3 3 4 3 4 4 3 4 3 3 3 4 4 3 3 3 3 3 4 3 4 3 3 4 3 4 4 4 3 3 4 3 3 4 3 4 4 3 4 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 4 3 4 3 4 4 3 4 3 4 3 4 4 3 4 3 3 4 3 4 3 3 4 4 4 3 3 4 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 4 3 4 4 4 3 4 3 4 3 3 3 4 4 4 3 3 4 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 4 4 3 4 3 4 4 3 3 4 3 4 3 3 3 3 4 3 4 4 3 4 4 3 4 3 4 4 3 3 3 3 4 3 4 3 4 4 3 4 4 3 4 3 3 3 3 3 3 4 3 3 3 4 4 4 3 3 4 3 4 4 3 3 4 4 3 4 3 4 4 4 4 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 4 3 4 3 4 3 4 3 3 4 3 4 4 3 3 4 3 3 3 4 3 3 4 4 3 3 4 4 3 4 3 3 4 3 3 3 3 4 3 4 4 3 4 4 4 4 3 4 4 3 4 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 4 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 3 4 3 3 3 3 4 4 4 3 4 3 3 3 4 3 3 3 4 3 4 4 3 3 3 4 3 4 3 3 4 3 4 4 4 4 4 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 4 4 3 4 3 4 4 3 4 3 4 3 3 4 3 3 4 3 4 3 3 4 4 3 3 4 4 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 4 3 3 3 3 4 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 4 3 4 3 4 3 4 3 4 3 3 4 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 4 3 4 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 4 3 3 4 4 3 4 3 3 3 4 3 3 3 3 4 3 4 4 4 3 3 4 3 4 3 4 4 4 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 4 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 4 4 3 3 3 3 3 4 4 3 3 3 3 4 3 4 3 4 4 3 4 3 4 4 4 3 4 3 4 3 3 3 4 4 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 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 3 2 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 4 3 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 3 4 4 4 4 3 3 4 3 4 3 4 4 3 4 3 4 4 3 3 4 3 4 3 3 4 3 4 3 4 3 4 4 3 4 4 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 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 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 4 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 4 4 4 4 3 3 3 4 3 3 4 3 4 3 4 4 3 3 4 3 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 4 4 3 3 4 3 4 3 4 4 3 3 4 3 4 4 4 3 4 3 3 3 3 4 4 3 3 3 4 4 4 4 3 4 3 3 4 3 4 4 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 4 4 3 3 4 4 3 4 3 3 4 3 3 3 3 4 4 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 4 3 4 4 3 4 4 4 3 3 4 3 4 3 3 4 4 3 4 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 4 4 3 3 3 3 4 3 3 4 3 4 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 4 3 4 4 3 3 4 3 4 4 3 4 3 3 4 4 3 4 3 4 3 4 4 3 4 3 4 4 3 4 4 4 3 3 4 3 3 4 3 4 3 3 4 4 4 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 4 3 4 3 3 4 4 3 3 3 4 3 4 3 3 4 3 4 4 4 4 3 3 4 4 4 3 4 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 3 3 4 3 4 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 3 3 4 3 4 3 4 4 4 3 4 3 3 3 3 3 4 4 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 4 3 4 3 4 3 3 4 3 4 3 4 3 3 3 3 3 3 4 3 4 3 3 3 4 4 3 3 4 4 4 3 4 3 3 4 3 3 4 3 4 3 4 3 3 4 3 4 4 4 3 4 3 3 4 4 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 4 4 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 3 4 4 3 4 3 3 4 4 3 4 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 4 3 4 4 3 4 3 3 4 4 3 4 3 4 4 4 3 3 4 4 3 4 4 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 4 3 4 3 3 4 3 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 4 3 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 4 3 4 3 3 4 3 3 3 4 3 4 3 4 4 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 3 4 3 3 4 4 3 4 4 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 4 3 4 3 4 4 3 4 3 3 3 4 4 3 3 4 3 4 3 4 4 3 3 3 4 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 3 4 3 4 4 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 4 3 4 3 4 3 3 3 4 3 4 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 3 4 4 4 4 3 4 4 4 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 4 3 3 4 3 4 3 4 3 3 3 3 3 4 4 3 4 3 3 4 4 3 3 4 3 3 4 3 4 4 3 4 3 3 3 4 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 4 4 3 3 4 3 4 3 4 3 3 4 4 4 4 3 3 4 3 4 3 4 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 1 1 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 4 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 4 3 4 4 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 4 4 3 4 3 4 3 4 4 3 4 3 4 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 1 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 4 3 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 4 3 3 4 3 4 4 4 3 4 3 4 3 4 4 3 3 3 4 3 4 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 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 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 4 3 4 3 3 3 3 4 4 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 4 3 4 3 4 3 3 4 3 4 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 4 3 4 4 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 4 3 3 4 3 3 3 4 4 4 3 4 3 3 3 3 4 3 3 4 3 4 4 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 4 3 4 3 3 3 3 4 3 3 3 4 3 4 3 4 3 4 3 4 4 3 4 4 4 3 3 4 3 4 3 3 3 3 3 4 3 3 4 4 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 4 3 4 4 3 4 4 3 4 4 3 4 4 4 3 4 4 3 4 4 3 4 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 4 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 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 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 3 4 3 3 4 4 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 4 3 4 3 3 4 3 3 3 3 4 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 4 3 4 3 3 4 3 3 4 3 3 4 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 4 3 4 4 3 4 4 3 4 3 3 4 4 3 3 4 3 3 4 3 4 4 3 3 4 3 4 3 4 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 4 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 4 3 3 4 3 3 4 4 4 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 4 4 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 4 4 3 4 3 4 4 3 4 3 3 4 3 4 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 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 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 4 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 4 4 3 3 3 3 4 3 4 4 3 4 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 4 4 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 4 3 4 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 4 4 4 4 3 4 4 3 3 4 4 4 4 4 3 3 4 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 4 3 4 3 3 3 3 3 4 3 4 3 4 4 3 3 4 4 4 3 3 3 4 4 3 3 4 4 3 4 3 3 3 3 4 3 3 3 4 4 3 4 3 3 4 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 4 4 3 3 3 3 4 4 3 3 4 4 3 4 3 4 4 3 4 4 3 3 3 3 4 3 4 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 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 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 4 3 3 4 4 3 4 4 3 3 4 3 4 3 4 3 3 4 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 3 4 3 4 4 3 3 3 4 3 3 4 3 3 4 3 4 4 3 4 3 4 4 3 4 3 3 4 4 4 3 4 4 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 4 3 4 3 4 3 3 4 4 3 3 4 4 3 3 4 3 3 4 3 4 4 4 3 3 3 3 3 4 3 3 4 3 3 4 4 4 3 4 4 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 4 4 3 3 4 3 3 3 3 4 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 4 4 3 4 3 4 3 3 4 4 3 3 3 3 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 4 3 4 3 4 4 3 3 4 3 4 4 4 4 4 4 3 3 4 3 3 4 3 4 3 3 4 3 4 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 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 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 4 3 3 4 3 4 4 3 4 4 3 4 4 3 4 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 4 4 3 3 4 3 3 3 4 3 4 3 4 3 3 4 4 4 3 4 3 4 4 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 4 3 3 4 3 4 4 3 3 3 4 3 4 3 3 4 3 4 3 3 3 4 4 3 3 3 3 3 3 3 4 4 3 4 3 3 4 4 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 4 3 3 3 3 3 3 3 3 4 4 3 3 4 3 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 4 3 3 3 3 4 4 3 3 3 3 3 4 3 4 3 4 3 3 3 4 3 4 3 4 4 4 4 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 4 3 4 4 3 4 3 3 3 3 4 3 3 3 3 4 3 4 3 4 4 4 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 4 3 4 4 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 3 3 3 3 3 4 4 3 3 3 4 3 3 4 3 4 4 3 3 4 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 2 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 4 3 3 3 4 3 4 4 4 4 3 4 4 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 4 3 4 3 3 3 4 3 3 3 3 4 3 4 4 4 3 3 4 4 3 4 3 4 3 3 4 4 3 3 4 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 4 3 4 4 3 3 3 4 3 3 4 3 4 3 3 4 4 3 4 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 3 4 3 3 4 4 3 4 3 4 3 4 3 3 4 4 3 4 4 4 4 3 3 3 4 4 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 4 3 3 4 3 4 4 3 3 3 3 4 3 3 4 3 3 3 4 4 4 4 3 3 4 3 4 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 4 3 4 3 3 3 3 3 4 3 3 4 4 3 3 4 4 4 3 3 3 4 3 3 4 3 3 3 4 3 3 3 4 4 3 3 4 3 4 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 4 3 3 3 3 3 4 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 4 4 3 3 3 3 4 3 3 4 3 4 4 3 4 3 4 4 3 4 3 4 3 3 4 3 4 2 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 3 3 3 3 4 3 3 4 3 4 3 4 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 4 4 3 4 4 4 3 4 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 4 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 4 3 3 4 4 3 3 4 3 3 4 3 4 4 3 4 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 4 4 4 3 4 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 3 3 4 4 4 4 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 4 4 4 3 4 3 3 4 3 4 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 2 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 4 3 3 3 3 4 4 3 3 3 3 4 4 4 4 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 3 3 4 3 4 4 3 4 3 3 4 4 3 3 4 4 3 4 3 3 4 3 4 4 3 4 4 3 3 3 4 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 4 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 4 3 4 4 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 3 4 3 3 3 4 3 3 4 3 4 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 4 3 4 3 3 3 3 3 4 4 3 3 4 3 3 3 3 4 4 3 4 4 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 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 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 4 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 4 3 4 3 3 3 4 4 4 4 3 4 4 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 4 4 3 3 3 4 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 4 4 4 3 4 3 3 4 3 3 3 4 3 3 3 3 4 4 4 4 3 4 4 3 3 4 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 4 3 3 3 3 4 2 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 4 4 3 3 3 3 3 3 4 3 4 3 3 3 3 4 4 3 4 4 3 3 3 4 3 3 4 4 3 3 3 3 3 4 3 4 3 4 4 4 4 3 3 4 4 4 4 3 3 4 4 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 4 3 4 4 3 4 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 4 3 3 4 3 4 4 3 4 4 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 4 3 4 4 4 3 3 3 4 3 3 4 3 4 3 4 3 3 4 4 3 4 4 3 3 4 4 3 3 4 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 4 3 4 3 4 4 4 3 4 3 4 3 3 3 4 3 3 3 4 4 4 3 4 4 3 4 3 4 3 3 4 3 4 4 3 3 4 3 4 4 4 3 4 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 4 3 4 3 4 4 3 3 3 3 4 3 3 4 4 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 4 4 3 4 3 3 4 3 3 4 3 4 4 4 3 3 4 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 3 3 4 4 3 4 3 4 4 4 3 3 4 3 3 4 4 3 3 3 4 4 3 4 4 3 3 3 3 4 3 3 4 3 4 4 4 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 4 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 4 4 3 4 4 3 3 4 4 3 3 4 4 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 4 3 3 3 3 3 4 3 4 4 3 4 4 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 4 3 4 4 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 4 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 4 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 4 3 3 4 3 3 3 4 3 4 4 4 4 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 4 3 4 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 4 4 4 3 3 3 3 4 3 4 3 3 4 3 4 4 4 3 3 4 3 3 4 3 4 4 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 4 4 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 4 4 4 4 4 3 4 3 3 3 3 4 4 3 4 4 4 4 3 4 4 4 3 3 3 4 3 4 3 3 4 3 3 3 4 3 3 4 3 4 3 3 3 4 3 3 3 4 3 3 4 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 4 4 3 4 3 4 4 3 4 3 4 4 3 4 4 4 4 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 4 3 3 3 3 4 3 4 4 3 4 3 3 4 3 4 4 4 4 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 3 3 4 3 4 3 3 4 3 3 3 4 4 3 4 4 3 4 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 4 3 3 4 3 4 4 3 4 3 3 4 4 3 4 3 4 3 4 3 4 3 4 3 3 4 4 3 4 3 3 3 4 4 3 3 3 3 4 4 4 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 4 3 4 4 4 4 4 4 4 3 4 3 3 4 3 4 3 3 4 4 3 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 4 4 3 3 3 4 3 4 4 3 3 4 4 4 4 3 4 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 4 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 4 3 3 3 3 4 3 3 3 3 4 4 3 4 4 4 3 4 4 4 4 3 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 3 3 3 4 3 3 3 3 4 3 3 4 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 4 3 4 3 3 4 3 4 4 4 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 4 4 4 4 3 4 3 3 3 3 3 4 4 4 3 4 3 3 4 3 4 4 3 4 4 4 3 3 4 3 4 4 3 4 4 3 4 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 4 3 4 4 3 3 3 4 3 4 3 3 4 4 3 4 3 4 4 4 4 3 3 4 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 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 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 4 4 3 4 3 4 4 3 4 3 3 4 4 3 3 4 3 3 3 3 4 3 4 4 4 4 3 4 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 4 3 3 4 4 3 4 3 4 3 3 3 4 4 4 3 3 4 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 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 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 3 4 3 4 4 4 3 4 4 4 4 4 3 3 4 4 4 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 3 3 4 4 3 4 4 4 3 3 4 3 4 3 3 3 4 4 3 3 3 4 3 3 3 3 3 4 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 4 4 3 3 4 4 4 3 4 3 4 4 4 4 4 3 3 4 3 3 4 3 4 3 4 4 3 4 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 4 3 3 4 3 4 4 3 4 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 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 3 3 3 3 3 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 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 3 3 3 4 3 4 4 3 4 3 3 4 4 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 4 4 4 4 4 3 4 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 4 3 4 4 4 3 4 3 3 4 4 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 4 3 3 3 3 3 3 3 4 4 3 4 4 3 4 3 4 3 3 4 3 3 4 4 3 4 4 3 3 3 3 3 4 4 4 4 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 4 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 4 4 3 3 3 4 4 4 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 4 3 3 4 4 4 3 3 4 3 4 4 3 4 3 3 4 3 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 4 3 4 4 3 3 4 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 4 4 3 3 3 3 4 4 3 4 3 3 4 4 3 4 3 3 3 3 3 4 3 4 4 3 4 3 3 4 4 3 3 4 4 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 4 4 4 3 3 3 4 4 3 3 4 4 3 3 4 4 3 3 4 4 3 3 4 3 4 4 4 3 4 4 4 4 4 4 4 3 4 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 4 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 3 4 3 3 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 4 4 3 4 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 4 3 3 3 4 3 3 3 3 3 3 3 4 4 4 3 3 4 3 3 4 3 3 3 3 4 3 4 3 4 3 3 4 3 4 4 3 4 4 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 4 3 4 4 3 3 3 4 3 3 4 3 3 4 4 3 4 3 3 3 3 4 4 4 3 3 3 3 3 3 4 3 4 3 3 3 4 4 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 4 3 3 4 3 4 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 4 3 3 3 4 3 3 4 3 3 3 3 4 4 3 3 3 3 3 3 3 4 4 3 4 3 3 4 4 3 4 3 4 4 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 4 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 4 4 3 3 3 4 3 3 3 4 3 4 3 4 3 4 4 3 3 4 3 4 4 3 3 3 4 3 3 3 3 4 4 3 4 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 4 4 3 4 3 3 4 3 3 4 3 3 4 4 3 3 4 3 4 4 3 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 4 4 3 4 3 4 4 3 4 3 4 4 4 4 3 3 3 4 3 4 4 3 3 4 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 4 4 4 3 4 4 3 4 3 3 4 3 3 3 4 4 4 3 4 3 4 3 3 4 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 4 3 4 4 3 3 3 4 4 3 4 4 3 4 3 3 3 4 3 4 3 3 4 4 3 3 3 4 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 3 3 3 3 3 3 4 4 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 4 4 4 3 4 3 4 4 3 3 3 4 3 4 3 4 3 4 3 4 4 4 4 3 4 4 4 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 4 3 4 3 4 3 4 3 4 4 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 4 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 4 3 4 4 3 4 4 4 4 3 3 3 4 3 3 4 3 3 4 4 4 4 3 3 4 4 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 3 3 3 3 4 3 4 4 4 4 3 4 3 4 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 4 3 4 4 4 4 4 4 4 3 4 3 4 4 3 3 4 4 3 3 4 4 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 4 3 4 3 4 3 3 3 3 3 3 4 3 4 4 3 3 4 3 4 3 4 3 4 3 3 4 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 3 3 3 4 3 4 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 4 4 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 4 3 4 4 3 4 4 3 4 3 4 4 4 4 3 4 4 3 4 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 4 3 3 4 3 4 3 3 4 4 3 3 4 4 3 3 4 3 3 3 4 3 4 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 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 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 4 4 3 3 4 3 4 3 3 4 4 3 3 3 3 3 4 3 4 4 3 3 3 3 3 4 3 3 3 3 4 4 3 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 3 3 4 3 3 4 3 4 4 3 3 3 4 3 3 4 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 3 4 3 4 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 3 4 4 3 3 4 3 4 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 4 3 4 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 4 3 4 4 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 4 3 4 4 4 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 4 3 4 3 4 3 3 3 3 3 4 3 3 4 3 4 4 4 3 4 4 3 3 3 3 4 3 3 4 4 3 3 4 3 3 4 3 3 4 3 4 3 4 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 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 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 3 4 4 3 4 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 4 3 4 4 4 4 3 3 3 3 3 3 4 4 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 4 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 4 3 3 4 3 4 3 4 3 3 4 4 4 4 3 3 3 4 4 3 3 3 4 4 4 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 4 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 4 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 4 4 3 3 3 3 3 4 3 3 4 3 3 3 4 3 4 3 4 3 4 3 3 3 3 4 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 4 4 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 4 3 3 3 3 4 4 3 3 3 3 3 3 4 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 4 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 4 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 4 4 3 3 3 4 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 4 4 3 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 4 4 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 3 3 4 4 4 3 3 4 3 4 3 3 3 4 3 4 3 3 3 3 4 3 4 4 3 4 3 3 4 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 4 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 4 4 3 3 4 3 4 3 3 4 3 4 3 4 4 3 4 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 3 4 3 3 3 4 3 4 3 4 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 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 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 4 3 3 3 3 3 3 4 4 3 4 4 4 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 4 3 3 4 4 3 3 3 3 3 4 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 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 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 4 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 4 3 3 3 4 3 3 3 4 3 3 4 3 4 3 3 4 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 4 4 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 4 3 4 4 3 4 3 3 4 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 4 3 3 3 4 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 4 4 3 4 3 3 3 3 4 3 3 3 3 3 4 3 4 3 4 3 3 4 3 4 4 4 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 4 4 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 4 3 4 3 4 4 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 4 3 3 4 3 4 3 4 3 3 4 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 4 3 3 3 3 4 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 3 4 4 3 4 3 4 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 4 3 3 3 3 3 4 4 4 3 3 4 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 3 3 4 3 3 3 3 4 3 3 3 4 4 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 4 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 3 4 3 3 4 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 4 3 3 4 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 1 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 4 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 3 4 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 3 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 4 3 3 4 3 3 4 3 3 4 3 3 4 4 3 3 3 3 3 4 3 3 4 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 4 4 4 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 4 4 4 4 4 3 3 4 3 4 4 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 4 4 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 4 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 4 4 4 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 4 4 3 4 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 3 4 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 4 4 3 4 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 4 4 4 4 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 4 3 3 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 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 3 4 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 4 4 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 4 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 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 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 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 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 4 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 4 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 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 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 4 3 3 4 3 3 3 3 3 3 4 4 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 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 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 4 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 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 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 4 3 3 4 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 4 3 3 4 4 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 4 3 3 3 3 3 3 4 3 3 3 3 4 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 4 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 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 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 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 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 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 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 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 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 4 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 4 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 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 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 4 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 3 3 3 3 3 4 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 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 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 2 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 4 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 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 3 2 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 4 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 4 3 4 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 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 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 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 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 2 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 4 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 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 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 4 4 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 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 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 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 4 2 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 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 3 3 2 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 4 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 4 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 4 3 4 4 3 3 3 4 3 3 3 3 3 4 3 3 3 4 4 3 4 3 3 3 4 4 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 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 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 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 4 3 3 3 3 3 3 3 3 2 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 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 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 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 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 4 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 2 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 1 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 4 3 3 4 3 3 3 3 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 4 4 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 4 3 4 4 4 3 3 4 3 4 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 3 4 3 4 3 3 3 3 4 4 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 4 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 4 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 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 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 2 3 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 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 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 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 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 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 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 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 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 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 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 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 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 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 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 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 4 4 4 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 4 4 3 4 3 3 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 3 4 3 4 4 3 4 3 4 4 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 2 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 4 4 3 3 3 4 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 3 4 3 4 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 4 3 4 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 4 3 3 3 3 4 3 4 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 4 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 4 3 4 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 3 3 4 3 4 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 4 4 3 4 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 3 3 4 4 3 3 4 3 4 3 4 3 4 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 3 4 4 3 3 3 4 4 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 4 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 4 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 4 3 3 4 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 4 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 4 4 3 4 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 4 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 4 4 4 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 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 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 4 3 4 4 4 4 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 3 3 3 4 3 4 3 3 4 3 4 3 4 4 3 4 3 3 3 4 4 4 4 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 4 3 4 4 4 4 4 4 3 4 3 4 4 4 3 3 4 4 3 3 3 3 3 4 4 3 3 3 3 3 4 3 4 4 4 4 4 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 4 4 4 4 4 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 4 4 3 4 4 4 4 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 4 4 3 4 3 4 4 4 4 3 4 3 3 4 3 4 3 4 4 3 4 4 4 3 3 3 3 3 4 3 4 3 4 4 3 4 4 4 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 4 4 4 3 3 3 4 3 3 4 4 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 4 3 4 4 4 4 4 4 4 3 4 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 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 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 4 4 4 3 4 4 3 4 3 3 4 4 4 3 4 4 3 4 4 3 3 4 4 3 3 4 3 4 3 4 3 3 4 3 3 3 4 4 3 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 4 4 3 3 4 3 4 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 4 4 3 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 4 4 4 3 3 4 4 4 3 4 4 3 3 4 4 4 4 3 4 4 4 4 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 4 4 3 3 3 4 3 3 4 3 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 3 4 3 4 3 3 4 3 4 4 3 4 3 4 4 3 4 3 4 4 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 3 4 4 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 4 2 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 2 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 3 3 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 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 4 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 3 4 4 3 4 4 3 4 4 3 3 3 4 3 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 4 4 3 4 3 3 4 3 4 3 4 4 3 3 4 4 5 4 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 4 4 3 4 3 4 4 4 4 3 4 3 4 4 4 3 4 4 4 4 4 4 3 4 3 4 4 4 3 4 4 4 4 4 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 4 4 3 4 3 3 3 3 3 3 3 4 3 4 4 4 5 5 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 4 4 4 4 4 4 3 3 4 4 4 3 4 3 3 3 4 4 3 3 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 4 4 4 4 3 3 3 3 3 3 3 4 3 3 4 3 4 5 5 5 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 4 4 3 3 4 4 3 4 4 4 4 3 4 4 4 3 4 4 3 4 3 4 4 3 4 4 4 4 4 4 3 3 4 4 4 3 4 4 4 4 4 4 4 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 4 3 3 3 3 3 3 4 3 3 4 4 4 4 4 4 3 4 3 3 3 3 4 3 4 4 3 4 4 5 4 5 5 4 4 4 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 4 3 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 4 4 4 4 3 4 4 4 4 4 3 3 4 3 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 4 4 4 3 3 4 3 4 3 3 3 3 4 4 4 4 4 4 4 5 5 4 5 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 4 4 4 4 4 4 3 3 4 3 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 3 4 3 3 3 3 4 4 4 4 4 4 4 4 4 5 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 4 4 3 4 4 3 4 4 4 4 3 4 3 4 3 3 4 4 3 4 3 4 4 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 4 3 3 4 3 3 4 3 4 3 4 3 3 4 4 4 4 4 4 4 5 5 4 5 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 4 4 3 3 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 4 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 3 4 4 3 4 3 4 4 4 4 3 4 4 4 4 3 4 4 4 4 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 4 3 3 3 3 3 4 3 4 3 4 4 4 4 4 4 4 4 4 3 4 4 3 3 4 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 4 3 4 3 4 3 4 4 4 4 3 3 4 4 4 4 3 4 3 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 4 3 3 3 3 3 4 3 4 4 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 4 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 3 3 3 3 3 3 4 3 4 4 4 3 3 4 3 4 4 4 3 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 4 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 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 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 4 4 3 4 3 4 4 4 4 3 4 3 3 3 4 4 4 4 4 3 4 4 3 4 4 4 3 4 4 3 4 3 3 3 3 4 3 4 3 3 4 3 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 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 3 3 3 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 3 3 3 3 3 3 3 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 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 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 4 4 4 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 3 3 3 3 3 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 4 3 4 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 4 4 3 3 4 3 3 3 3 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 3 3 4 3 3 3 4 3 3 3 4 4 3 3 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 3 4 3 4 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 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 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 4 4 3 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 4 3 4 4 3 4 4 4 3 3 4 3 4 3 3 4 4 4 4 4 4 3 4 3 4 3 3 4 3 4 3 3 4 3 4 3 3 3 4 4 4 4 4 3 4 3 3 4 3 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 3 3 4 3 4 4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 4 4 4 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 3 3 4 3 3 3 4 4 3 4 4 3 4 4 4 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 4 4 3 4 3 3 3 3 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 3 4 4 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 4 3 4 4 3 3 4 4 4 4 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 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 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 3 3 3 4 4 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 4 3 3 4 3 3 4 3 4 3 4 4 3 4 4 3 4 4 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 4 3 3 4 3 3 4 3 4 3 4 4 3 4 4 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 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 3 4 3 3 3 4 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 3 4 3 4 4 4 4 4 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 4 3 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 4 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 4 4 4 4 4 4 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 4 3 4 4 4 4 4 4 4 4 3 4 4 3 3 4 3 3 3 3 3 4 3 4 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 4 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 4 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 4 3 4 4 3 4 3 4 4 3 4 3 4 4 3 3 4 4 4 4 4 3 4 4 4 4 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 4 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 4 4 4 4 4 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 3 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 4 3 3 3 3 3 3 4 3 4 3 4 3 4 4 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 4 4 3 3 4 3 4 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 4 3 4 4 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 4 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 4 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 4 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 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 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 4 3 4 3 3 4 3 3 4 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 3 4 3 4 4 3 4 3 3 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 4 4 4 4 4 4 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 4 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 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 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 3 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 3 3 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 4 4 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 4 3 4 4 3 4 4 4 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 4 4 3 4 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 4 4 4 4 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 4 4 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 4 4 4 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 4 4 4 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 4 3 4 4 3 3 3 3 3 3 3 4 4 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 4 3 4 3 3 3 3 4 3 3 3 3 3 3 4 2 3 4 3 4 4 4 3 4 4 4 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 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 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 4 4 4 4 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 3 3 4 3 4 4 4 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 4 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 4 4 4 4 3 3 4 3 4 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 4 4 3 3 4 3 4 4 4 4 4 4 4 4 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 4 4 4 3 4 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 3 3 4 4 4 4 3 4 4 4 4 3 3 4 4 4 3 4 4 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 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 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 4 4 4 4 4 4 4 4 3 4 4 4 3 4 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 4 3 4 4 3 3 3 4 3 4 3 3 4 4 4 3 3 4 4 3 3 3 3 4 3 3 4 4 3 4 3 4 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 4 4 4 4 4 4 5 4 5 3 4 4 4 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 3 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 4 4 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 4 4 4 3 4 4 3 4 3 4 4 4 4 3 4 4 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 2 3 2 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 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 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 4 3 4 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 4 4 4 4 5 5 5 5 4 4 3 4 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 4 4 3 4 4 3 3 4 3 3 3 3 3 4 4 4 4 4 3 4 3 3 4 4 4 4 4 4 3 4 3 3 3 3 4 3 3 4 4 4 4 3 3 4 3 4 4 4 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 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 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 4 4 4 5 5 5 5 5 5 4 4 3 4 4 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 4 4 3 3 4 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 4 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 4 4 4 5 5 5 4 5 5 5 4 4 4 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 4 3 4 4 4 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 4 3 4 3 3 4 3 3 4 4 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 4 4 4 4 4 5 5 5 5 4 5 5 4 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 4 4 3 4 3 4 3 4 3 4 3 4 4 3 4 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 4 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 3 3 3 3 4 4 4 5 5 5 4 4 4 4 5 4 4 3 3 4 3 3 3 3 3 3 3 4 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 4 3 3 4 3 4 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 4 4 4 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 5 5 4 3 4 3 4 3 3 3 3 3 3 3 3 4 4 4 4 4 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 4 3 3 3 4 4 3 4 3 3 4 4 4 3 4 4 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 4 4 3 3 4 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 4 4 4 4 4 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 5 4 4 4 3 4 3 4 4 3 4 3 4 3 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 4 4 4 3 4 3 3 3 3 4 3 4 4 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 3 3 3 4 4 4 4 3 4 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 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 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 3 3 3 3 3 3 3 4 3 4 4 3 4 4 4 4 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 4 4 3 3 3 4 3 3 3 3 4 4 3 4 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 3 3 4 3 3 4 3 4 4 3 3 3 3 3 3 4 4 3 3 3 3 3 3 4 4 4 4 3 4 4 4 3 3 4 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 3 4 3 4 3 4 4 3 4 3 4 3 3 4 3 4 4 3 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 4 4 3 4 4 4 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 4 4 3 4 3 4 4 4 4 3 4 4 3 4 3 4 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 4 4 4 4 4 3 3 3 3 3 3 4 4 4 4 4 4 3 4 4 4 3 3 3 3 4 3 4 3 4 3 3 4 3 3 4 3 3 3 3 4 4 3 3 4 3 3 4 3 3 3 4 3 3 4 3 4 3 3 3 3 4 4 3 3 3 3 3 4 4 3 3 3 3 3 4 3 4 3 4 4 4 4 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 4 4 4 4 4 4 4 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 4 3 4 4 3 3 3 3 3 4 4 3 4 4 4 3 4 4 4 4 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 4 4 3 3 4 3 3 4 3 3 4 4 4 3 3 3 4 3 3 3 3 4 4 3 4 3 3 3 3 3 4 3 4 4 4 3 4 3 3 4 4 4 4 4 4 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 4 4 4 4 4 3 4 3 4 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 4 4 3 3 3 3 4 3 3 4 3 4 4 3 4 4 3 3 4 4 3 4 4 3 3 4 4 3 4 4 4 4 3 3 3 3 4 3 4 4 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 4 4 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 3 3 4 3 4 4 3 4 3 4 3 4 4 3 4 4 4 3 3 4 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 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 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 4 4 4 4 3 3 3 4 3 3 4 3 3 4 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 4 4 4 4 4 4 4 4 4 3 4 3 4 3 3 3 3 4 4 4 3 4 4 4 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 4 4 4 3 3 4 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 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 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 3 4 3 3 4 4 3 4 3 3 3 3 3 3 3 4 4 4 4 3 4 3 3 3 3 3 3 3 4 4 3 3 3 3 3 4 3 3 3 3 3 4 4 3 4 3 3 4 4 4 4 4 4 4 4 4 3 4 3 3 3 4 3 3 4 4 4 4 4 3 4 4 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 4 3 4 4 4 4 3 3 3 3 4 3 3 4 4 3 4 3 3 4 3 3 3 4 4 4 4 4 3 4 4 4 4 4 3 4 4 4 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 3 3 4 4 3 4 3 3 3 3 4 3 4 3 3 3 4 3 4 3 4 3 4 4 3 4 4 3 4 3 4 3 4 4 4 4 4 4 3 3 4 3 4 3 4 3 4 4 3 4 4 4 4 4 4 3 3 4 3 3 3 4 4 3 4 3 3 3 4 4 3 4 3 3 4 3 4 3 3 3 4 4 3 4 3 3 4 3 3 3 3 3 4 4 4 3 4 3 4 4 4 4 3 4 3 4 4 4 3 4 4 4 3 4 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 4 3 3 3 3 3 3 3 3 3 4 2 3 3 4 4 3 4 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 4 4 3 4 3 4 4 3 4 3 3 3 4 3 3 4 3 4 4 3 3 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 4 4 4 4 3 3 4 3 3 3 3 4 4 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 4 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 3 4 3 4 4 4 3 4 4 4 3 4 4 3 3 4 3 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 3 3 3 3 3 4 4 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 4 4 3 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 4 4 3 4 4 3 3 4 3 3 3 3 3 3 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 4 3 3 3 3 4 3 4 4 3 4 3 4 3 3 3 3 4 4 4 4 3 4 3 3 4 3 3 3 4 3 3 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 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 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 4 3 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 3 4 3 3 4 3 4 4 4 4 3 4 3 3 3 3 4 3 4 4 4 4 4 4 3 4 4 3 4 4 4 3 4 4 4 4 4 4 3 4 3 4 4 3 4 4 4 4 4 3 4 4 4 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 4 3 4 3 4 4 3 4 3 4 3 3 3 3 4 4 3 3 4 3 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 3 4 4 3 4 3 3 3 4 4 4 4 3 3 4 3 3 4 3 4 3 4 3 4 3 3 4 3 4 3 3 4 4 3 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 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 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 4 4 3 4 3 3 3 3 4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 3 4 4 3 3 3 3 3 3 3 3 3 3 4 4 3 4 4 4 4 3 3 3 3 4 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 4 3 4 4 3 4 4 4 3 3 4 3 4 3 4 3 3 4 3 4 3 4 4 3 4 3 4 4 3 4 3 4 4 3 4 4 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 4 3 3 4 3 4 4 4 4 4 4 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 4 4 3 4 4 3 4 3 4 3 4 4 4 4 3 3 3 3 4 3 3 4 3 4 3 3 3 4 4 3 3 3 4 4 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 3 4 4 3 3 4 3 4 4 4 3 3 3 3 4 4 4 3 4 3 3 4 4 3 4 4 4 3 4 3 3 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 4 4 3 3 3 3 3 3 4 3 3 3 4 4 4 4 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 4 3 3 3 4 4 4 4 3 3 4 3 4 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 3 3 3 4 4 4 4 4 4 4 4 4 4 3 4 4 3 3 4 3 4 4 4 3 4 4 4 4 3 4 3 4 4 3 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 4 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 4 4 4 3 3 3 3 4 3 4 4 3 3 4 3 4 4 4 4 4 3 3 4 4 4 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 4 3 4 3 4 3 4 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 3 3 3 4 4 4 4 3 4 3 4 3 3 4 3 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 3 4 4 4 4 4 4 3 3 4 4 4 3 3 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 4 4 4 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 4 4 4 3 4 3 3 4 3 4 3 4 3 4 4 4 4 4 4 3 3 4 3 4 4 4 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 3 3 4 3 4 4 3 4 4 4 4 3 4 3 4 4 4 4 4 3 4 4 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 4 4 3 3 4 4 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 4 4 4 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 4 4 3 3 3 3 3 3 3 4 4 4 3 4 3 3 4 3 4 4 4 4 4 4 4 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 4 4 4 3 4 3 4 3 3 4 3 4 4 3 3 4 3 3 3 3 3 3 3 4 3 4 4 3 3 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 3 4 3 3 4 4 3 4 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 3 4 3 3 4 4 3 3 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 4 3 3 3 3 3 3 4 4 3 4 3 4 3 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 3 4 3 3 3 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 3 4 3 3 3 3 4 3 3 3 4 4 4 3 3 4 4 4 4 3 4 3 3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 4 4 4 4 3 3 4 4 4 3 4 4 3 4 4 3 3 3 4 4 3 3 3 4 3 4 4 3 4 3 3 4 4 4 3 4 3 3 4 3 4 3 4 4 3 4 4 4 3 4 4 3 4 4 3 4 4 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 3 3 3 4 4 3 3 3 3 4 3 4 3 4 4 3 4 4 4 4 4 4 3 4 4 4 4 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 3 4 4 3 4 3 4 4 4 3 3 4 3 4 4 3 4 3 4 4 3 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 3 3 3 4 3 4 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 4 4 3 3 3 3 4 3 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 4 4 4 3 3 3 4 3 3 4 4 3 3 3 4 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 3 4 4 3 3 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 3 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 3 4 3 4 4 4 4 4 4 3 4 4 4 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 4 3 4 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 5 4 4 4 4 4 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 4 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 3 3 4 4 3 3 4 3 4 3 4 3 3 4 3 4 4 4 4 3 4 4 4 4 4 4 3 4 4 3 4 4 4 3 4 3 4 4 3 3 4 4 4 3 4 4 3 4 3 4 4 4 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 3 4 4 3 4 3 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 3 3 3 3 4 4 4 4 4 4 4 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 4 4 4 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 4 4 4 4 4 4 5 4 4 4 4 4 4 4 4 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 4 3 4 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 4 3 3 3 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 3 4 4 4 4 3 3 4 4 4 3 4 4 4 4 4 3 4 4 3 4 4 3 4 3 4 4 3 4 4 3 4 4 4 4 3 4 4 3 4 4 4 4 4 3 4 4 4 3 3 4 4 4 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 4 4 3 3 4 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 4 4 4 4 4 5 4 4 4 3 4 4 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 3 3 4 3 4 4 4 4 4 4 3 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 3 3 4 3 3 4 3 4 4 4 4 4 4 4 4 3 4 4 3 4 4 4 3 3 4 3 4 4 3 4 3 4 4 3 4 3 3 3 4 3 4 4 3 4 4 4 4 3 4 3 4 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 4 3 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 3 4 3 3 4 3 4 3 4 4 4 4 4 5 4 4 4 4 4 4 3 3 3 3 3 4 4 3 4 3 4 3 3 4 3 4 3 3 3 3 4 4 3 4 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 4 3 3 4 4 3 4 4 3 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 3 4 4 3 3 4 4 4 3 3 4 4 4 3 4 3 3 4 4 4 4 4 3 4 3 4 4 4 4 4 4 3 3 4 4 3 4 4 4 3 4 3 4 4 4 3 4 4 3 4 4 4 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 4 4 3 4 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 4 4 3 3 3 4 4 3 3 3 3 3 3 4 4 4 3 4 4 4 4 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 3 4 3 3 4 3 3 4 4 3 3 3 3 4 3 3 4 3 4 4 3 4 3 4 3 4 4 4 4 3 4 3 4 3 4 3 4 4 4 3 3 3 4 4 4 4 4 4 4 3 4 4 4 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 4 4 4 3 4 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 4 4 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 4 4 3 3 4 3 3 4 3 4 3 4 4 4 4 4 4 3 4 4 4 4 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 4 3 4 4 4 4 3 4 4 4 4 3 4 3 3 4 3 4 3 4 3 3 4 3 4 4 3 4 3 4 3 4 4 4 4 3 4 4 3 4 3 4 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 3 3 3 4 3 4 3 3 3 4 3 4 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 4 3 4 4 3 3 4 4 4 3 4 3 3 3 4 3 3 4 4 4 4 4 4 3 4 4 4 4 4 4 3 4 4 4 4 3 3 3 4 3 4 4 3 4 3 4 3 4 3 3 3 4 4 4 3 4 4 4 3 4 4 3 4 3 3 4 3 4 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 4 4 4 3 4 4 4 4 4 4 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 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 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 2 3 3 3 3 3 2 3 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 3 3 3 3 3 3 4 3 3 3 4 3 4 4 4 4 4 4 4 4 4 4 3 4 3 3 4 4 3 3 4 3 4 3 3 4 4 3 3 4 4 4 4 4 3 4 3 3 4 4 3 3 4 4 3 4 4 4 4 3 3 4 3 4 3 4 3 3 3 3 3 3 3 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 3 3 4 3 4 3 3 3 3 4 3 4 4 4 4 4 3 4 3 3 3 3 3 3 4 4 4 4 4 4 3 4 3 3 3 3 4 3 3 4 4 4 3 3 4 4 4 4 4 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 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 3 3 3 3 4 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 4 3 3 4 3 4 3 3 3 3 4 4 3 3 3 4 3 3 4 3 4 3 4 3 3 4 3 3 3 4 4 3 4 3 4 4 4 4 3 4 4 3 4 4 4 3 4 4 3 3 4 4 3 3 4 3 3 4 4 3 3 4 3 4 4 4 4 3 4 4 3 4 3 3 4 4 3 3 4 3 3 4 3 3 3 4 4 3 4 3 4 3 3 4 3 4 3 3 4 3 4 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 4 4 4 3 4 4 4 3 3 3 3 3 4 3 4 3 3 3 3 4 3 4 3 4 3 3 4 3 3 3 3 3 4 4 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 4 4 3 4 3 3 4 3 4 3 4 4 3 3 4 4 4 4 4 4 3 4 3 3 4 4 3 4 4 4 4 4 3 4 3 3 4 4 4 4 3 3 3 4 4 4 3 3 3 4 3 4 3 3 3 4 4 4 4 3 4 4 3 3 3 4 4 3 4 4 3 4 4 4 3 4 3 4 4 4 4 4 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 3 4 3 4 3 4 3 4 3 3 3 3 3 3 4 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 4 4 3 4 3 4 4 3 4 3 4 3 4 4 4 3 4 4 4 4 4 3 4 4 3 3 3 3 4 3 4 4 4 3 3 4 4 3 3 3 4 4 4 4 4 4 3 4 4 4 4 4 4 3 3 4 3 4 3 3 4 3 3 3 3 4 4 4 3 4 4 3 4 3 4 3 3 4 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 4 3 3 4 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 4 4 3 4 3 4 4 4 4 3 4 4 4 4 3 4 3 4 4 4 4 3 4 3 4 4 4 4 3 4 4 3 4 4 3 4 4 4 3 4 4 3 4 3 4 3 4 4 3 4 4 4 3 3 4 3 3 3 4 3 3 4 3 3 4 3 4 3 4 4 4 4 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 4 3 3 4 3 4 3 4 4 3 4 3 4 3 4 3 3 4 4 3 4 4 4 4 4 4 4 4 3 4 4 3 4 3 3 4 4 3 4 3 3 3 3 3 3 4 3 3 4 3 3 4 3 4 4 4 4 4 4 3 3 3 4 4 4 4 4 4 3 4 4 4 4 3 3 3 4 4 3 3 4 4 3 4 4 4 4 3 4 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 4 3 4 3 3 4 3 4 3 4 3 4 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 3 4 4 3 4 3 4 4 3 4 3 3 3 3 4 4 3 4 3 4 4 3 4 4 4 3 4 3 3 4 3 4 4 3 4 3 3 4 3 4 3 3 3 3 4 3 4 3 4 4 3 4 3 3 3 4 4 3 4 3 4 4 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 3 4 3 3 3 3 3 3 3 3 4 4 3 4 4 3 4 3 4 3 4 4 3 4 3 4 3 3 4 3 4 3 4 3 4 4 3 3 4 3 4 3 4 4 3 4 3 3 3 3 4 3 4 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 4 3 4 3 3 3 3 3 3 4 3 4 3 4 4 4 4 4 3 4 4 4 4 3 4 3 3 4 4 3 3 3 3 3 4 4 4 3 3 4 4 4 3 4 4 3 3 4 4 4 3 3 4 3 3 3 4 3 3 4 3 4 4 3 3 4 3 4 3 4 3 3 4 4 3 4 4 3 4 4 4 4 4 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 3 4 3 3 4 4 3 4 4 3 4 3 3 4 3 4 3 4 4 3 4 4 4 3 3 4 3 4 4 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 4 4 3 4 3 4 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 4 3 4 3 4 4 3 4 4 3 4 4 3 3 3 3 3 3 4 4 4 3 3 3 3 4 3 3 4 3 3 3 4 4 3 4 3 4 4 3 4 3 4 3 4 4 3 4 3 4 3 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 4 4 3 4 3 4 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 4 3 3 3 4 3 4 4 4 4 3 4 4 3 4 3 4 4 4 4 3 4 3 3 4 4 3 4 4 3 3 4 4 3 3 4 3 4 3 4 3 3 4 3 4 3 3 3 4 3 3 4 4 4 4 3 3 4 3 3 3 4 4 3 3 4 3 3 3 4 4 4 4 4 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 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 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 4 3 4 4 4 4 3 3 4 3 4 4 4 3 3 4 4 3 4 4 3 4 3 4 4 3 4 3 4 3 3 4 3 3 3 4 4 3 4 3 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 4 3 4 3 3 4 3 3 4 4 3 3 4 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 4 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 4 3 4 3 4 3 3 4 4 3 3 4 4 3 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 4 3 4 4 3 4 3 4 4 4 3 3 4 3 4 3 3 4 4 3 3 4 4 3 4 4 3 3 4 4 3 4 4 3 4 3 4 3 3 4 3 4 3 4 4 3 4 4 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 4 2 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 4 4 4 3 4 4 3 4 4 3 4 3 4 3 4 4 3 4 4 3 4 3 3 4 4 4 4 3 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 3 3 4 4 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 4 3 4 3 4 4 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 4 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 4 3 4 3 3 4 3 4 3 4 3 3 3 3 4 3 4 4 3 4 4 3 4 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 3 3 4 3 4 3 4 3 4 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 4 3 4 3 3 4 3 4 4 4 3 3 4 3 3 4 3 4 4 3 4 3 4 3 4 3 3 3 3 4 4 4 3 3 4 3 3 4 3 4 3 4 3 3 4 3 4 3 3 3 3 4 3 3 3 4 4 3 3 4 3 4 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 4 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 4 4 3 3 4 3 3 3 3 4 3 3 4 3 4 3 4 4 3 3 4 3 3 4 3 4 3 3 4 3 4 3 4 3 4 4 3 4 3 3 4 3 4 3 3 4 3 4 3 3 3 3 3 3 4 3 4 4 3 4 3 3 3 4 4 4 3 4 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 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 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 4 4 4 4 3 4 4 4 3 4 3 3 4 3 4 4 4 4 4 3 4 3 3 4 3 4 3 3 4 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 4 3 4 3 3 4 3 4 4 3 3 4 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 4 4 3 3 4 3 3 4 4 3 4 3 3 3 3 3 3 3 4 4 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 4 4 3 4 3 4 3 3 4 3 4 3 4 4 3 3 4 4 3 3 3 3 4 3 3 4 3 3 3 3 4 4 4 4 4 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 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 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 4 4 3 4 3 4 3 3 3 4 3 3 3 3 4 3 4 4 4 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 4 4 3 3 3 4 3 4 3 4 4 4 4 4 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 3 4 3 4 3 3 4 4 4 3 4 3 4 3 3 3 4 3 3 4 3 3 4 3 4 3 4 3 3 4 3 3 3 4 3 3 4 4 4 3 4 4 3 3 4 3 3 3 3 3 3 4 3 4 3 4 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 4 4 4 3 3 4 3 4 3 3 3 3 4 3 3 4 4 3 3 4 4 3 3 4 3 3 4 4 3 4 3 3 4 4 4 3 3 4 3 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 4 3 4 3 4 4 4 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 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 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 4 4 4 4 3 4 3 3 3 4 3 4 3 3 3 4 3 4 4 4 4 4 4 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 3 4 3 4 4 3 4 3 4 3 3 4 3 4 4 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 4 3 4 4 4 4 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 4 4 4 4 3 4 4 3 4 3 3 3 4 3 3 4 3 4 4 3 3 4 4 3 4 3 3 3 4 3 4 3 4 3 3 4 3 4 3 4 4 3 4 4 4 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 3 4 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 4 3 3 3 4 3 3 4 3 3 4 4 4 4 3 4 4 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 4 3 4 4 3 4 4 4 4 4 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 4 3 4 4 3 4 4 4 3 4 4 3 4 3 4 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 4 3 3 4 3 4 3 4 4 4 4 4 4 4 4 3 3 3 3 4 4 4 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 3 4 4 3 4 3 4 3 3 4 3 4 3 3 3 4 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 4 4 4 3 4 4 4 4 4 4 4 3 4 3 3 3 3 4 3 4 3 3 4 3 3 4 4 4 3 4 3 3 4 3 3 4 3 3 4 3 4 4 4 3 4 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 4 4 3 3 4 4 3 3 3 3 3 3 4 3 3 4 3 3 3 4 4 3 4 4 3 4 4 4 3 3 3 4 3 3 4 3 3 4 3 3 3 4 3 3 4 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 4 3 3 4 4 3 4 3 3 3 4 4 3 4 3 4 3 3 4 3 4 4 4 4 3 4 3 4 4 3 3 3 3 4 3 3 4 3 4 3 4 4 3 3 3 3 4 4 3 4 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 4 3 3 3 4 3 3 4 4 4 3 4 4 3 3 4 4 3 4 4 3 3 3 3 3 4 4 4 3 3 3 3 3 4 3 4 3 4 3 3 3 4 3 3 4 4 3 3 4 4 3 4 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 3 4 4 4 3 4 4 4 4 3 3 3 4 3 4 4 3 3 4 3 4 3 4 3 4 4 3 3 3 4 3 3 4 3 4 3 4 3 3 4 3 3 3 4 4 3 4 3 3 4 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 4 4 3 4 3 4 4 3 4 3 4 3 4 4 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 4 4 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 4 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 4 3 4 3 3 4 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 4 3 4 3 4 4 3 4 3 4 3 3 4 3 4 3 4 3 3 4 3 3 3 4 3 3 4 3 3 4 4 4 3 4 4 3 4 3 4 3 4 3 3 4 4 4 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 4 4 3 4 4 3 3 3 4 3 4 4 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 4 4 4 3 4 3 3 4 3 4 3 4 3 3 4 3 4 3 3 4 3 4 3 4 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 3 4 3 3 4 4 4 3 3 3 3 4 3 4 4 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 4 4 3 4 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 4 3 4 3 4 3 4 3 3 4 4 3 3 3 4 3 4 4 3 4 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 4 3 4 4 4 3 3 4 3 4 4 3 3 3 3 3 4 3 4 3 3 3 4 4 3 3 4 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 4 4 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 4 3 3 3 4 3 3 4 3 3 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 4 4 4 4 3 3 4 3 4 4 3 4 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 3 4 3 3 4 3 4 3 4 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 4 3 3 4 4 3 3 3 4 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 4 3 3 4 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 4 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 4 3 4 3 4 3 3 4 3 3 3 3 4 3 3 3 4 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 4 4 4 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 4 3 4 4 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 3 3 3 3 4 4 3 4 4 3 3 3 3 3 4 3 4 4 3 4 3 4 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 4 4 3 4 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 4 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 4 4 3 4 4 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 4 4 3 4 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 4 3 4 4 4 3 4 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 4 3 4 3 4 4 4 3 3 4 3 3 3 4 3 3 3 4 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 3 4 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 4 4 3 3 3 4 3 3 3 4 4 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 3 3 3 4 3 3 4 4 4 2 4 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 4 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 3 3 3 4 3 3 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 4 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 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 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 4 3 3 4 3 3 4 3 3 3 4 3 4 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 4 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 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 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 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 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 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 1 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 1 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 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 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 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 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 4 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 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 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 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 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 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 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 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 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 4 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 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 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 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 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 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 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 4 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 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 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 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 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 4 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 2 3 3 4 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 4 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 3 3 3 4 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 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 3 3 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 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 4 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 4 3 4 3 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 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 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 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 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 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 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 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 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 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 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 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 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 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 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 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 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 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 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 4 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 4 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 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 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 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 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 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 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 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 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 4 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 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 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 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 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 4 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 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 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 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 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 4 4 3 3 3 4 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 4 4 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 4 3 3 4 3 4 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 4 3 3 4 3 4 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 4 4 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 3 4 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 4 4 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 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 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 4 3 3 4 4 4 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 4 4 3 3 3 3 3 3 4 3 4 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 3 3 3 4 4 3 4 3 4 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 4 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 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 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 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 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 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 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 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 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 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 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 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 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 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 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 3 3 3 3 3 4 3 4 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 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 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 4 3 4 3 4 4 3 4 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 4 4 3 4 4 4 3 4 4 4 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 4 3 4 4 3 3 3 4 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 4 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 4 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 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 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 4 4 3 4 3 3 4 3 3 3 4 4 3 3 4 3 3 4 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 4 4 4 3 3 3 4 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 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 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 4 3 4 4 3 4 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 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 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 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 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 4 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 4 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 4 3 3 4 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 4 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 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 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 4 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 4 4 3 3 3 4 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 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 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 4 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 4 3 4 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 4 3 3 4 4 3 3 3 4 3 3 3 4 3 4 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 3 3 3 4 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 4 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 4 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 4 3 3 3 4 3 3 4 4 3 3 4 3 3 4 3 4 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 4 4 3 3 3 4 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 4 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 4 4 3 4 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 3 4 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 4 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 4 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 4 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 4 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 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 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 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 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 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 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 4 4 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 3 3 3 3 4 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 4 3 3 3 3 4 3 3 4 4 3 3 3 3 3 3 4 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 4 4 3 3 3 3 4 3 4 3 3 3 3 3 4 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 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 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 4 4 3 3 3 4 3 3 3 4 4 3 3 3 3 3 3 4 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 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 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 4 3 3 3 4 3 3 3 3 4 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 4 3 3 4 3 4 3 4 3 4 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 4 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 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 3 3 3 2 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 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 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 4 3 3 4 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 4 3 4 3 4 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 4 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 4 3 3 4 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 4 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 4 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 4 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 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 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 4 3 4 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 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 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 4 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 4 3 3 4 3 3 3 3 3 4 3 3 3 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 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 4 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 4 4 3 4 3 4 4 3 3 3 4 3 4 3 3 3 3 4 3 4 3 4 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 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 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 4 3 3 3 3 3 3 3 4 3 4 3 3 3 4 3 3 4 3 4 3 3 4 3 3 3 4 3 4 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 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 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 3 2 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 4 3 4 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 4 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 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 3 3 3 3 2 3 3 3 3 3 3 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 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 4 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 4 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 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 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 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 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 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 4 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 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 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 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 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 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 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 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 3 2 4 3 3 3 3 3 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 3 3 3 3 3 4 3 3 4 3 4 3 4 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 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 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 4 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 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 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 4 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 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 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 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 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 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 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 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 4 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 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 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 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 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 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 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 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 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 3 3 3 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 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 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 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 4 3 3 3 3 3 4 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 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 3 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 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 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 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 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 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 4 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 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 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 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 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 3 3 3 3 3 2 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 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 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 3 3 3 3 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 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 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 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 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 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 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 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 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 4 3 3 3 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 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 4 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 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 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 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 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 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 3 3 3 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 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 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 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 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 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 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 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 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 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 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 3 3 3 3 3 3 3 3 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 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 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 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 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 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 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 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 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 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 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 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 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 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 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 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 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 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 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 4 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 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 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 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 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 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 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 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 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 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 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 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 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 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 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 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 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 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 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 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 3 2 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 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 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 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 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 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 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 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 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 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 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 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 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 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 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 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 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 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 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 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 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 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 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 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 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 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 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 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 3 3 3 3 3 3 3 3 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 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 1 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 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 3 3 3 3 3 3 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 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 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 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 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 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 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 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 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 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 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 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 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 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 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 3 3 3 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 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 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 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 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 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 1 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 4 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 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 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 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 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 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 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 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 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 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 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 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 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 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 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 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 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 1 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 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 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 2 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 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 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 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 1 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 4 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 1 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 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 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 1 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 1 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 1 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 4 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 1 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 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 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 1 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 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 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 1 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 1 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 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 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 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 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 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 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 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 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 1 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 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 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 1 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 1 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 3 3 3 2 2 3 3 2 3 2 3 3 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 3 3 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 3 3 3 2 3 3 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 3 3 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 2 3 3 3 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 3 2 2 2 3 3 3 3 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 3 2 3 3 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 3 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 3 3 3 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 3 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 3 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 3 2 3 3 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 3 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 3 3 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 3 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 3 2 2 2 2 3 2 3 3 3 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 3 2 3 3 3 3 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 3 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 3 2 3 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 3 3 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 3 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 3 3 3 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 3 3 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 3 3 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 3 2 2 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 3 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 2 2 3 2 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 3 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 3 3 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 3 2 3 3 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 3 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 3 3 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 3 2 3 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 3 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 3 2 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 3 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 2 2 3 3 3 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 3 3 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 3 3 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 3 3 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 3 3 2 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 3 3 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 2 2 3 3 2 3 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 3 3 2 2 3 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 3 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 3 2 3 3 3 2 3 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 3 2 3 3 2 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 3 3 3 2 3 3 3 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 3 3 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 3 3 2 2 2 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 3 3 2 2 2 3 3 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 3 2 3 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 2 3 3 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 3 3 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 3 3 2 3 2 3 3 2 3 3 2 3 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 3 2 2 3 3 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 3 3 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 3 2 3 3 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 3 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 3 2 2 3 3 2 2 2 3 3 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 3 3 2 3 3 2 3 3 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 3 2 3 3 3 3 2 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 3 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 3 2 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 3 3 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 3 2 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 3 2 3 3 3 2 2 3 3 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 3 2 3 2 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 3 3 2 2 2 2 3 3 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 3 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 3 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 3 3 2 2 2 3 3 3 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 3 3 3 2 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 3 3 2 3 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 3 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 3 3 3 3 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 2 3 3 3 3 2 2 3 2 3 3 2 2 2 3 3 3 2 3 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 2 3 3 3 3 2 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 3 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 3 3 3 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 3 3 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 3 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 3 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 3 3 2 2 3 3 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 3 3 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 3 3 3 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 2 3 2 2 3 2 2 3 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 3 2 3 2 3 3 3 3 3 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 3 2 3 3 3 3 2 3 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 3 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 3 3 3 2 2 2 3 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 3 2 2 3 3 3 2 2 2 3 3 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 2 3 2 2 3 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 3 2 3 3 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 2 3 3 3 2 2 3 3 2 2 2 2 2 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 3 2 3 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 2 2 3 3 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 3 2 3 2 2 2 3 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 3 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 2 3 3 3 3 2 3 3 3 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 3 2 2 2 3 3 2 3 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 3 3 2 3 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 3 3 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 3 3 2 3 2 3 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 3 2 3 2 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 2 3 2 3 2 3 3 2 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 3 2 3 2 3 3 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 3 2 3 2 3 3 2 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 3 3 3 2 2 3 2 2 3 3 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 3 2 2 3 3 2 2 3 2 2 3 2 3 2 3 3 2 3 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 3 2 2 2 2 3 2 3 3 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 3 2 3 2 2 3 2 3 2 3 2 2 3 2 2 2 3 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 3 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 3 3 2 3 2 2 3 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 3 2 2 3 3 3 2 3 2 3 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 2 3 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 3 2 2 3 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 3 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 3 2 3 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 3 3 2 3 2 2 2 3 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 3 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 3 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 2 3 3 3 2 2 2 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 3 2 2 2 3 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 3 2 3 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 2 2 2 3 3 3 3 2 2 3 3 3 2 2 2 2 3 3 3 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 2 3 3 2 2 3 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 3 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 2 2 2 3 3 3 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 2 3 2 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 2 3 2 2 3 3 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 3 2 3 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 3 2 3 2 3 2 3 2 3 2 2 2 3 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 3 2 2 2 3 2 2 3 2 2 3 2 2 3 3 2 3 3 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 2 3 2 2 2 3 2 2 2 2 3 3 3 2 2 3 2 2 2 3 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 3 2 3 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 2 3 3 3 3 3 2 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 3 2 3 3 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 3 3 2 3 2 2 2 2 2 3 3 2 3 2 3 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 2 2 3 2 2 2 2 3 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 3 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 3 3 2 2 3 2 3 3 3 2 2 2 3 3 2 2 3 2 3 2 2 3 2 3 3 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 2 3 3 3 2 2 3 2 3 3 2 3 2 3 3 3 3 2 2 2 2 3 3 3 2 3 2 2 3 2 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 2 3 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 2 2 3 3 2 2 3 3 2 2 3 2 2 3 3 2 2 2 3 2 2 2 3 2 3 3 2 2 2 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 3 3 2 3 2 3 2 2 3 2 3 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 3 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 3 3 2 3 2 3 3 3 2 3 2 2 3 2 3 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 3 2 2 2 2 2 2 2 3 3 2 2 3 2 2 3 3 2 2 2 2 3 3 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 3 3 3 2 3 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 2 3 2 2 2 3 2 2 2 3 2 3 3 3 3 2 2 2 3 2 3 2 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 3 2 3 3 2 2 2 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 2 3 2 3 3 2 3 2 3 2 2 3 3 2 3 2 2 2 3 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 3 2 2 2 3 3 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 3 2 3 2 2 2 2 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 3 3 2 2 2 2 2 2 2 3 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 3 2 3 3 3 3 2 3 2 2 3 3 2 2 2 2 3 2 2 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 3 2 2 3 2 3 2 2 2 3 2 3 2 3 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 3 2 2 2 2 2 2 3 2 2 2 3 2 3 2 2 3 3 3 2 3 2 3 2 3 2 3 3 2 3 3 3 2 3 2 2 2 3 2 2 3 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 3 2 3 3 2 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 3 3 3 3 2 3 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 2 2 3 2 2 3 2 3 2 2 2 2 2 2 3 2 3 2 2 3 3 2 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 3 2 3 2 3 2 2 2 2 2 2 2 3 2 2 3 3 2 2 2 2 3 2 3 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 3 3 2 3 2 2 3 2 2 3 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 2 2 3 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 3 3 2 2 2 2 3 2 2 3 2 2 2 3 2 2 2 3 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 2 3 2 2 2 3 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 3 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 3 3 3 3 2 3 2 3 2 2 2 3 2 3 2 3 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 2 2 2 2 3 2 2 2 3 2 3 3 3 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 3 2 2 2 3 3 3 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 2 2 2 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 3 2 3 3 3 2 3 3 2 3 2 2 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 2 2 3 2 3 2 3 3 3 3 2 3 2 2 2 3 2 3 2 3 2 2 3 3 3 2 2 3 3 2 3 2 3 2 2 2 2 3 3 3 2 3 2 3 2 3 2 3 2 2 2 2 3 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 2 3 2 3 2 3 2 3 2 2 3 2 2 2 2 2 3 2 3 2 3 3 2 3 2 3 2 2 2 3 2 2 2 2 2 2 3 2 2 2 3 2 2 2 3 2 2 2 2 3 2 3 2 2 3 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 3 2 2 3 3 3 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 2 2 2 3 3 2 3 2 2 2 2 2 2 3 3 3 2 2 3 2 2 2 2 2 2 3 3 3 3 2 2 2 2 3 3 2 2 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 3 2 2 2 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 3 2 2 3 2 3 3 2 2 3 2 2 2 2 2 2 2 3 2 3 2 2 2 3 2 2 3 2 3 2 3 2 2 2 3 2 2 2 2 3 3 2 2 2 2 3 2 2 2 2 3 2 2 2 2 2 3 2 2 3 2 2 2 2 2 3 2 2 2 2 2 3 2 3 2 2 2 2 2 2 3 2 2 2 2 2 3 3 2 2 2 2 2 2 3 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2